On Tue, Mar 5, 2024, at 20:30, Nathan Chancellor wrote:
On Tue, Mar 05, 2024 at 10:52:16AM -0800, Nick Desaulniers wrote:
On Tue, Mar 5, 2024 at 10:50 AM Arnd Bergmann arnd@arndb.de wrote:
On Tue, Mar 5, 2024, at 18:42, Nathan Chancellor wrote:
As the warnings do not appear to have a high signal to noise ratio and the source level silencing options are not sustainable, disable the warnings unconditionally, as they will be enabled with -Wenum-conversion and are supported in all versions of clang that can build the kernel.
I took a look at a sample of warnings in an allmodconfig build and found a number that need attention. I would much prefer to leave these turned on at the W=1 level and only disable them at the default warning level.
Sounds like these new diagnostics are very noisy. 0day bot sends people reports at W=1. Perhaps W=2?
It feels like this is not a great reason for moving it to W=2 instead of W=1, but W=2 is still better than always disabling it I think.
Specifically, the 0day bot warns for newly added W=1 warnings but not for preexisting ones, and I think there are other warnings at the W=1 level that are similarly noisy to this one.
A number of subsystems test with W=1 as well and while opting into W=1 means that you are potentially asking for new warnings across newer compiler releases, a warning with this number of instances is going to cause a lot of issues (I think of netdev for example).
I only see a handful of warnings in net (devlink, bpf) and drivers/net (ethernet/{3com,amd8111e,funeth,hns,idpf,jme,mlx4} and wireless/{iwlwifi,mt76,rtw88,rtw89}).
These are also some of the ones that I think need a closer look.
Fundamentally, I do not really care which avenue we take (either this change or off by default, on at W=1), I am happy to do whatever. Unfortunately, CONFIG_WERROR makes these decisions much more urgent because it is either disable it and have other warnings creep in amongst the sprawl of these warnings or leave it on and miss other errors for the same reason.
Agreed.
Arnd