Re: [PATCH v3] purgatory: fix disabling debug info

From: Nathan Chancellor
Date: Thu Mar 30 2023 - 18:29:36 EST


On Thu, Mar 30, 2023 at 06:22:24PM +0000, Alyssa Ross wrote:
> Since 32ef9e5054ec, -Wa,-gdwarf-2 is no longer used in KBUILD_AFLAGS.
> Instead, it includes -g, the appropriate -gdwarf-* flag, and also the
> -Wa versions of both of those if building with Clang and GNU as. As a
> result, debug info was being generated for the purgatory objects, even
> though the intention was that it not be.
>
> Fixes: 32ef9e5054ec ("Makefile.debug: re-enable debug info for .S files")
> Signed-off-by: Alyssa Ross <hi@xxxxxxxxx>
> Cc: stable@xxxxxxxxxxxxxxx
> Acked-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>

This is definitely more future proof.

Reviewed-by: Nathan Chancellor <nathan@xxxxxxxxxx>
Tested-by: Nathan Chancellor <nathan@xxxxxxxxxx>

> ---
> v2: https://lore.kernel.org/r/20230326182120.194541-1-hi@xxxxxxxxx
>
> Difference from v2: replaced asflags-remove-y with every possible
> debug flag with asflags-y += -g0, as suggested by Nick Desaulniers.
>
> Additionally, I've CCed the x86 maintainers this time, since Masahiro
> said he would like acks from subsystem maintainers, and
> get_maintainer.pl didn't pick them the first time around.
>
> arch/riscv/purgatory/Makefile | 7 +------
> arch/x86/purgatory/Makefile | 3 +--
> 2 files changed, 2 insertions(+), 8 deletions(-)
>
> diff --git a/arch/riscv/purgatory/Makefile b/arch/riscv/purgatory/Makefile
> index d16bf715a586..9c1e71853ee7 100644
> --- a/arch/riscv/purgatory/Makefile
> +++ b/arch/riscv/purgatory/Makefile
> @@ -84,12 +84,7 @@ CFLAGS_string.o += $(PURGATORY_CFLAGS)
> CFLAGS_REMOVE_ctype.o += $(PURGATORY_CFLAGS_REMOVE)
> CFLAGS_ctype.o += $(PURGATORY_CFLAGS)
>
> -AFLAGS_REMOVE_entry.o += -Wa,-gdwarf-2
> -AFLAGS_REMOVE_memcpy.o += -Wa,-gdwarf-2
> -AFLAGS_REMOVE_memset.o += -Wa,-gdwarf-2
> -AFLAGS_REMOVE_strcmp.o += -Wa,-gdwarf-2
> -AFLAGS_REMOVE_strlen.o += -Wa,-gdwarf-2
> -AFLAGS_REMOVE_strncmp.o += -Wa,-gdwarf-2
> +asflags-y += -g0
>
> $(obj)/purgatory.ro: $(PURGATORY_OBJS) FORCE
> $(call if_changed,ld)
> diff --git a/arch/x86/purgatory/Makefile b/arch/x86/purgatory/Makefile
> index 17f09dc26381..8e6c81b1c8f7 100644
> --- a/arch/x86/purgatory/Makefile
> +++ b/arch/x86/purgatory/Makefile
> @@ -69,8 +69,7 @@ CFLAGS_sha256.o += $(PURGATORY_CFLAGS)
> CFLAGS_REMOVE_string.o += $(PURGATORY_CFLAGS_REMOVE)
> CFLAGS_string.o += $(PURGATORY_CFLAGS)
>
> -AFLAGS_REMOVE_setup-x86_$(BITS).o += -Wa,-gdwarf-2
> -AFLAGS_REMOVE_entry64.o += -Wa,-gdwarf-2
> +asflags-y += -g0
>
> $(obj)/purgatory.ro: $(PURGATORY_OBJS) FORCE
> $(call if_changed,ld)
> --
> 2.37.1
>
>