On Thu, Jul 21, 2022 at 07:27:34AM -0700, Nick Desaulniers wrote: > On Wed, Jul 20, 2022 at 4:23 PM Justin Stitt <justinstitt@xxxxxxxxxx> wrote: > > > > There's been an ongoing mission to re-enable the -Wformat warning for > > Clang. A previous attempt at enabling the warning showed that there were > > many instances of this warning throughout the codebase. The sheer amount > > of these warnings really polluted builds and thus -Wno-format was added > > to _temporarily_ toggle them off. > > > > After many patches the warning has largely been eradicated for x86, > > x86_64, arm, and arm64 on a variety of configs. The time to enable the > > warning has never been better as it seems for the first time we are > > ahead of them and can now solve them as they appear rather than tackling > > from a backlog. > > > > As to the root cause of this large backlog of warnings, Clang seems to > > pickup on some more nuanced cases of format warnings caused by implicit > > integer conversion as well as default argument promotions from > > printf-like functions. > > > > > > Link: https://github.com/ClangBuiltLinux/linux/issues/378 > > Suggested-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx> > > Signed-off-by: Justin Stitt <justinstitt@xxxxxxxxxx> > > --- > > Previous attempt: (https://patchwork.kernel.org/project/linux-kbuild/patch/20190201210853.244043-1-jflat@xxxxxxxxxxxx/) > > > > Note: > > For this patch to land on its feet, the plethora of supporting patches that > > fixed various -Wformat warnings need to be picked up. Thanfully, a lot > > of them have! > > > > Here are the patches still waiting to be picked up: > > * https://lore.kernel.org/all/20220718230626.1029318-1-justinstitt@xxxxxxxxxx/ > > * https://lore.kernel.org/all/20220711222919.2043613-1-justinstitt@xxxxxxxxxx/ > > Hi Masahiro, Nathan, and Tom, > What are your thoughts for _when_ in the release cycle this should be > picked up? I worry that if we don't remove this soon, we will > backslide, and more -Wformat issues will crop up making removing this > in the future like digging in sand. Justin has chased down many > instances of this warning, and I'm happy to help clean up fallout from > landing this. Let me do a series of builds with the two patches above against next-20220721 to see if there are any instances of this warning across the less frequently tested architectures then I will review/ack this. I don't think we need to worry much about backslide, as -Wformat is enabled with W=1, which the 0day folks already test with, so new instances of this warning should get reported to the authors when they are introduced so they can be fixed immediately. However, I would still like to see this applied sooner rather than later, although I would also like us to be completely warning clean before doing so, especially with -Werror now being selected with all{mod,yes}config. -rc8 is this Sunday and final should be July 31st so I think this could be applied at some point between those two dates then maybe sent to Linus for a late pull request once all other trees have been merged but that is ultimately up to Masahiro. Cheers, Nathan > > > > scripts/Makefile.extrawarn | 1 - > > 1 file changed, 1 deletion(-) > > > > diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn > > index f5f0d6f09053..9bbaf7112a9b 100644 > > --- a/scripts/Makefile.extrawarn > > +++ b/scripts/Makefile.extrawarn > > @@ -47,7 +47,6 @@ else > > > > ifdef CONFIG_CC_IS_CLANG > > KBUILD_CFLAGS += -Wno-initializer-overrides > > -KBUILD_CFLAGS += -Wno-format > > KBUILD_CFLAGS += -Wno-sign-compare > > KBUILD_CFLAGS += -Wno-format-zero-length > > KBUILD_CFLAGS += $(call cc-disable-warning, pointer-to-enum-cast) > > -- > > 2.37.0.170.g444d1eabd0-goog > > > > > -- > Thanks, > ~Nick Desaulniers