All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nick Desaulniers <ndesaulniers@google.com>
To: Li Zetao <lizetao1@huawei.com>
Cc: keescook@chromium.org, tglx@linutronix.de, mingo@redhat.com,
	bp@alien8.de, dave.hansen@linux.intel.com, x86@kernel.org,
	hpa@zytor.com, kirill.shutemov@linux.intel.com,
	tony.luck@intel.com, masahiroy@kernel.org, michael.roth@amd.com,
	sathyanarayanan.kuppuswamy@linux.intel.com, nathan@kernel.org,
	brijesh.singh@amd.com, peterz@infradead.org,
	venu.busireddy@oracle.com, linux-kernel@vger.kernel.org,
	akpm@linux-foundation.org
Subject: Re: [PATCH -next v4 2/2] x86/boot/compressed: Add "-Wall" flag to Makefile
Date: Tue, 11 Oct 2022 14:20:36 -0700	[thread overview]
Message-ID: <CAKwvOdmK6Niv3x-K0__5fqJ+N27wiQaB0v7kS-iAAJfBXGk7XA@mail.gmail.com> (raw)
In-Reply-To: <20221011012904.2330473-3-lizetao1@huawei.com>

On Mon, Oct 10, 2022 at 6:32 PM Li Zetao <lizetao1@huawei.com> wrote:
>
> Compressed/Makefile does not have "-Wall" flag, this is the old problem of
> x86 not sharing makefiles. Fix by adding "-Wall" flag to Makefile. But when
> "-Wall" flag added to Makefile, a few extra warnings were found.
>
> 1.
> In file included from arch/x86/boot/compressed/misc.c:15:
>   In file included from arch/x86/boot/compressed/misc.h:24:
>   In file included from ./include/linux/elf.h:6:
>   In file included from ./arch/x86/include/asm/elf.h:8:
>   In file included from ./include/linux/thread_info.h:60:
>   ./arch/x86/include/asm/thread_info.h:175:13: warning: calling
>   "__builtin_frame_address" with a nonzero argument is unsafe
>   [-Wframe-address]
>     oldframe = __builtin_frame_address(1);
>                ^~~~~~~~~~~~~~~~~~~~~~~~~~
>
> ./arch/x86/include/asm/thread_info.h:177:11: warning: calling
>   "__builtin_frame_address" with a nonzero argument is unsafe
>   [-Wframe-address]
>     frame = __builtin_frame_address(2);
>             ^~~~~~~~~~~~~~~~~~~~~~~~~~
>
> This warning is disabled in the main Makefile for this reason so we
> should just be able to disable it, adding "frame-address" flag to
> Makefile.
>
> 2.
> arch/x86/boot/compressed/kaslr.c:627:6: warning: unused variable
>   "i" [-Wunused-variable]
>     int i;
>         ^
>
> This happens when CONFIG_MEMORY_HOTREMOVE or CONFIG_ACPI are "n".
> Fix by adding "-std=gnu11" flag to Makefile, and we should put
> the variable "i" within the for loop.
>
> 3.
> arch/x86/boot/compressed/acpi.c:23:1: warning: unused function
>   "__efi_get_rsdp_addr" [-Wunused-function]
>
> This happens when CONFIG_EFI is disabled for the reason that
> function "__efi_get_rsdp_addr" is only called in efi_get_rsdp_addr
> when CONFIG_EFI enable. So function "__efi_get_rsdp_addr" should
> not be defined when CONFIG_EFI is disabled.
>
> Signed-off-by: Li Zetao <lizetao1@huawei.com>

I gave this a quick spin with clang to ensure that I didn't observe
new warnings produced via -Wall:

$ make LLVM=1 -j128 -s defconfig all
$ make LLVM=1 ARCH=i386 -j128 -s defconfig all

Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Tested-by: Nick Desaulniers <ndesaulniers@google.com>

> ---
> v1 -> v2: Patch is new
> v2 -> v3: Resolve extra warnings after "-Wall" flag added
> v3 -> v4: Put this patch at the end
>
>  arch/x86/boot/compressed/Makefile | 3 ++-
>  arch/x86/boot/compressed/acpi.c   | 5 +++--
>  arch/x86/boot/compressed/kaslr.c  | 3 +--
>  3 files changed, 6 insertions(+), 5 deletions(-)
>
> diff --git a/arch/x86/boot/compressed/Makefile b/arch/x86/boot/compressed/Makefile
> index 3a261abb6d15..8918a8306dff 100644
> --- a/arch/x86/boot/compressed/Makefile
> +++ b/arch/x86/boot/compressed/Makefile
> @@ -35,7 +35,7 @@ targets := vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2 vmlinux.bin.lzma \
>  # be valid.
>  KBUILD_CFLAGS := -m$(BITS) -O2 $(CLANG_FLAGS)
>  KBUILD_CFLAGS += -fno-strict-aliasing -fPIE
> -KBUILD_CFLAGS += -Wundef
> +KBUILD_CFLAGS += -Wundef -Wall -std=gnu11
>  KBUILD_CFLAGS += -DDISABLE_BRANCH_PROFILING
>  cflags-$(CONFIG_X86_32) := -march=i386
>  cflags-$(CONFIG_X86_64) := -mcmodel=small -mno-red-zone
> @@ -44,6 +44,7 @@ KBUILD_CFLAGS += -mno-mmx -mno-sse
>  KBUILD_CFLAGS += -ffreestanding -fshort-wchar
>  KBUILD_CFLAGS += -fno-stack-protector
>  KBUILD_CFLAGS += $(call cc-disable-warning, address-of-packed-member)
> +KBUILD_CFLAGS += $(call cc-disable-warning, frame-address)
>  KBUILD_CFLAGS += $(call cc-disable-warning, gnu)
>  KBUILD_CFLAGS += -Wno-pointer-sign
>  KBUILD_CFLAGS += $(call cc-option,-fmacro-prefix-map=$(srctree)/=)
> diff --git a/arch/x86/boot/compressed/acpi.c b/arch/x86/boot/compressed/acpi.c
> index 21febd9f21ab..c062a8230e9c 100644
> --- a/arch/x86/boot/compressed/acpi.c
> +++ b/arch/x86/boot/compressed/acpi.c
> @@ -19,10 +19,10 @@
>   */
>  struct mem_vector immovable_mem[MAX_NUMNODES*2];
>
> +#ifdef CONFIG_EFI
>  static acpi_physical_address
>  __efi_get_rsdp_addr(unsigned long cfg_tbl_pa, unsigned int cfg_tbl_len)
>  {
> -#ifdef CONFIG_EFI
>         unsigned long rsdp_addr;
>
>         /*
> @@ -41,9 +41,10 @@ __efi_get_rsdp_addr(unsigned long cfg_tbl_pa, unsigned int cfg_tbl_len)
>                 return (acpi_physical_address)rsdp_addr;
>
>         debug_putstr("Error getting RSDP address.\n");
> -#endif
> +
>         return 0;
>  }
> +#endif
>
>  static acpi_physical_address efi_get_rsdp_addr(void)
>  {
> diff --git a/arch/x86/boot/compressed/kaslr.c b/arch/x86/boot/compressed/kaslr.c
> index e476bcbd9b42..4abc9c42cf4d 100644
> --- a/arch/x86/boot/compressed/kaslr.c
> +++ b/arch/x86/boot/compressed/kaslr.c
> @@ -625,7 +625,6 @@ static bool process_mem_region(struct mem_vector *region,
>                                unsigned long minimum,
>                                unsigned long image_size)
>  {
> -       int i;
>         /*
>          * If no immovable memory found, or MEMORY_HOTREMOVE disabled,
>          * use @region directly.
> @@ -645,7 +644,7 @@ static bool process_mem_region(struct mem_vector *region,
>          * If immovable memory found, filter the intersection between
>          * immovable memory and @region.
>          */
> -       for (i = 0; i < num_immovable_mem; i++) {
> +       for (int i = 0; i < num_immovable_mem; i++) {
>                 u64 start, end, entry_end, region_end;
>                 struct mem_vector entry;
>
> --
> 2.34.1
>


-- 
Thanks,
~Nick Desaulniers

  reply	other threads:[~2022-10-11 21:20 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-27  8:15 [PATCH -next v2 0/2] Remove unused variables in x86/boot Li Zetao
2022-09-27  8:15 ` [PATCH -next v2 1/2] x86/boot/compressed: Add "-Wall" flag to Makefile Li Zetao
2022-09-27  8:15 ` [PATCH -next v2 2/2] x86/boot: Remove unused variables Li Zetao
2022-09-27 21:50 ` [PATCH -next v2 0/2] Remove unused variables in x86/boot Nathan Chancellor
2022-09-27 21:58   ` Nathan Chancellor
2022-09-29  2:16   ` Li Zetao
2022-09-29 16:59     ` Nathan Chancellor
2022-09-30  3:27 ` [PATCH -next v3 " Li Zetao
2022-09-30  3:27   ` [PATCH -next v3 1/2] x86/boot/compressed: Add "-Wall" flag to Makefile Li Zetao
2022-09-30  3:27   ` [PATCH -next v3 2/2] x86/boot: Remove unused variables Li Zetao
2022-10-08 13:41   ` Ping: [PATCH -next v3 0/2] Remove unused variables in x86/boot Li Zetao
2022-10-09 15:17     ` Kees Cook
2022-10-11  1:29       ` [PATCH -next v4 " Li Zetao
2022-10-11  1:29         ` [PATCH -next v4 1/2] x86/boot: Remove unused variables Li Zetao
2022-10-11 21:15           ` Nick Desaulniers
2022-10-11 21:22           ` Nick Desaulniers
2022-10-11  1:29         ` [PATCH -next v4 2/2] x86/boot/compressed: Add "-Wall" flag to Makefile Li Zetao
2022-10-11 21:20           ` Nick Desaulniers [this message]
2022-10-17 17:01           ` Borislav Petkov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAKwvOdmK6Niv3x-K0__5fqJ+N27wiQaB0v7kS-iAAJfBXGk7XA@mail.gmail.com \
    --to=ndesaulniers@google.com \
    --cc=akpm@linux-foundation.org \
    --cc=bp@alien8.de \
    --cc=brijesh.singh@amd.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=hpa@zytor.com \
    --cc=keescook@chromium.org \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lizetao1@huawei.com \
    --cc=masahiroy@kernel.org \
    --cc=michael.roth@amd.com \
    --cc=mingo@redhat.com \
    --cc=nathan@kernel.org \
    --cc=peterz@infradead.org \
    --cc=sathyanarayanan.kuppuswamy@linux.intel.com \
    --cc=tglx@linutronix.de \
    --cc=tony.luck@intel.com \
    --cc=venu.busireddy@oracle.com \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.