Re: [PATCH] ftrace: Build with CPPFLAGS to get -Qunused-arguments

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Sep 17, 2018 at 12:38 AM Joel Stanley <joel@xxxxxxxxx> wrote:
>
> When building to record the mcount locations the kernel uses
> KBUILD_CFLAGS but not KBUILD_CPPFLAGS. This means it lacks
> -Qunused-arguments when building with clang, resulting in a lot of
> noisy warnings.
>
> Signed-off-by: Joel Stanley <joel@xxxxxxxxx>
> ---
> Not sure why -Qunused-arguments is in CPP instead of KBUILD_CFLAGS. We
> could instead put it in KBUILD_CFLAGS, and not need this patch.

The preprocessor has flags that can change the definitions of macros.
So there might be unused flags there.  I'm not a fan of covering up
those warnings via -Qunused-arguments; the flags should be feature
detected via cc-option and friends rather than always added then
silenced if excessive.  That hides flags that are long dead/unused.

Thanks for this patch!
Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>

>
>  scripts/Makefile.build | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/scripts/Makefile.build b/scripts/Makefile.build
> index 5a2d1c9578a0..54da4b070db3 100644
> --- a/scripts/Makefile.build
> +++ b/scripts/Makefile.build
> @@ -219,7 +219,7 @@ else
>  sub_cmd_record_mcount = set -e ; perl $(srctree)/scripts/recordmcount.pl "$(ARCH)" \
>         "$(if $(CONFIG_CPU_BIG_ENDIAN),big,little)" \
>         "$(if $(CONFIG_64BIT),64,32)" \
> -       "$(OBJDUMP)" "$(OBJCOPY)" "$(CC) $(KBUILD_CFLAGS)" \
> +       "$(OBJDUMP)" "$(OBJCOPY)" "$(CC) $(KBUILD_CPPFLAGS) $(KBUILD_CFLAGS)" \
>         "$(LD) $(KBUILD_LDFLAGS)" "$(NM)" "$(RM)" "$(MV)" \
>         "$(if $(part-of-module),1,0)" "$(@)";
>  recordmcount_source := $(srctree)/scripts/recordmcount.pl
> --
> 2.17.1
>


-- 
Thanks,
~Nick Desaulniers



[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux