Messages in this thread | | | Date | Thu, 22 Apr 2021 17:32:21 -0700 | From | Nathan Chancellor <> | Subject | Re: [PATCH] x86/boot/compressed: enable -Wundef |
| |
On Thu, Apr 22, 2021 at 12:04:42PM -0700, Nick Desaulniers wrote: > A discussion around -Wundef showed that there were still a few boolean > Kconfigs where #if was used rather than #ifdef to guard different code. > Kconfig doesn't define boolean configs, which can result in -Wundef > warnings. > > arch/x86/boot/compressed/Makefile resets the CFLAGS used for this > directory, and doesn't re-enable -Wundef as the top level Makefile does. > If re-added, with RANDOMIZE_BASE and X86_NEED_RELOCS disabled, the > following warnings are visible. > > arch/x86/boot/compressed/misc.h:82:5: warning: 'CONFIG_RANDOMIZE_BASE' > is not defined, evaluates to 0 [-Wundef] > ^ > arch/x86/boot/compressed/misc.c:175:5: warning: 'CONFIG_X86_NEED_RELOCS' > is not defined, evaluates to 0 [-Wundef] > ^ > > Simply fix these and re-enable this warning for this directory.
I wonder if it is worth turning on -Wall for this directory...
> Suggested-by: Nathan Chancellor <nathan@kernel.org> > Suggested-by: Joe Perches <joe@perches.com> > Link: https://github.com/ClangBuiltLinux/linux/issues/570 > Link: https://lore.kernel.org/lkml/67f6cd269684c9aa8463ff4812c3b4605e6739c3.camel@perches.com/ > Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
> --- > arch/x86/boot/compressed/Makefile | 1 + > arch/x86/boot/compressed/misc.c | 2 +- > arch/x86/boot/compressed/misc.h | 2 +- > 3 files changed, 3 insertions(+), 2 deletions(-) > > diff --git a/arch/x86/boot/compressed/Makefile b/arch/x86/boot/compressed/Makefile > index e0bc3988c3fa..77cc373c1036 100644 > --- a/arch/x86/boot/compressed/Makefile > +++ b/arch/x86/boot/compressed/Makefile > @@ -30,6 +30,7 @@ targets := vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2 vmlinux.bin.lzma \ > > KBUILD_CFLAGS := -m$(BITS) -O2 > KBUILD_CFLAGS += -fno-strict-aliasing -fPIE > +KBUILD_CFLAGS += -Wundef > KBUILD_CFLAGS += -DDISABLE_BRANCH_PROFILING > cflags-$(CONFIG_X86_32) := -march=i386 > cflags-$(CONFIG_X86_64) := -mcmodel=small -mno-red-zone > diff --git a/arch/x86/boot/compressed/misc.c b/arch/x86/boot/compressed/misc.c > index 267e7f93050e..3a214cc3239f 100644 > --- a/arch/x86/boot/compressed/misc.c > +++ b/arch/x86/boot/compressed/misc.c > @@ -172,7 +172,7 @@ void __puthex(unsigned long value) > } > } > > -#if CONFIG_X86_NEED_RELOCS > +#ifdef CONFIG_X86_NEED_RELOCS > static void handle_relocations(void *output, unsigned long output_len, > unsigned long virt_addr) > { > diff --git a/arch/x86/boot/compressed/misc.h b/arch/x86/boot/compressed/misc.h > index 901ea5ebec22..b140f988a233 100644 > --- a/arch/x86/boot/compressed/misc.h > +++ b/arch/x86/boot/compressed/misc.h > @@ -79,7 +79,7 @@ struct mem_vector { > u64 size; > }; > > -#if CONFIG_RANDOMIZE_BASE > +#ifdef CONFIG_RANDOMIZE_BASE > /* kaslr.c */ > void choose_random_location(unsigned long input, > unsigned long input_size, > > base-commit: 16fc44d6387e260f4932e9248b985837324705d8 > -- > 2.31.1.498.g6c1eba8ee3d-goog >
| |