On Wed, Feb 3, 2021 at 9:39 AM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote: > > On Wed, Feb 3, 2021 at 5:32 PM Sedat Dilek <sedat.dilek@xxxxxxxxx> wrote: > > > > On Wed, Feb 3, 2021 at 8:53 AM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote: > > > > > > Sedat Dilek noticed duplicated debug flags passed when building C > > > files with CONFIG_DEBUG_INFO. > > > > > > I do not know much about his build environment, but yes, Kbuild > > > recurses to the top Makefile with some build targets. For example, > > > 'make CC=clang bindeb-pkg' reproduces the issue. > > > > > > With commit 121c5d08d53c ("kbuild: Only add -fno-var-tracking-assignments > > > for old GCC versions") applied, DEBUG_CFLAGS is now reset only when > > > CONFIG_CC_IS_GCC=y. > > > > > > Fix it to reset DEBUG_CFLAGS also when using Clang. > > > > > > Fixes: 121c5d08d53c ("kbuild: Only add -fno-var-tracking-assignments for old GCC versions") > > > Reported-by: Sedat Dilek <sedat.dilek@xxxxxxxxx> > > > Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx> > > > > That fixes the issue for me: > > > > Without patch: > > > > ... -Wno-unused-const-variable -g -gdwarf-5 -gz=zlib -g -gdwarf-5 > > -gz=zlib -pg -mfentry ... > > > > With this patch: > > ... -Wno-unused-const-variable -g -gdwarf-5 -gz=zlib -pg -mfentry ... > > > > The relevant Kconfigs: > > > > $ grep DEBUG_INFO .config | grep ^CONFIG > > CONFIG_DEBUG_INFO=y > > CONFIG_DEBUG_INFO_COMPRESSED=y > > CONFIG_DEBUG_INFO_DWARF5=y > > > > Latest make-line: > > > > $ /usr/bin/perf_5.10 stat make V=1 -j4 LLVM=1 LLVM_IAS=1 > > PAHOLE=/opt/pahole/bin/pahole LOCALVERSION=-4-amd64-clang12- > > cfi-pgo KBUILD_VERBOSE=1 KBUILD_BUILD_HOST=iniza > > KBUILD_BUILD_USER=sedat.dilek@xxxxxxxxx > > KBUILD_BUILD_TIMESTAMP=2021-02-03 bindeb-pkg > > > Ah, OK. > You use bindeb-pkg for building the kernel. > > That's why this happens only for you, > but Nick did not observe this issue. > I guess so. - sed@ - > > > KDEB_PKGVERSION=5.11.0~rc6-4~bull > > seye+dileks1 > > > > Feel free to add my... > > > > Tested-by: Sedat Dilek <sedat.dilek@xxxxxxxxx> > > > > Thanks again Masahiro. > > > > - Sedat - > > > > > --- > > > > > > Makefile | 4 +++- > > > 1 file changed, 3 insertions(+), 1 deletion(-) > > > > > > diff --git a/Makefile b/Makefile > > > index 3d3f67b98ca2..769a38ee81b9 100644 > > > --- a/Makefile > > > +++ b/Makefile > > > @@ -811,10 +811,12 @@ KBUILD_CFLAGS += -ftrivial-auto-var-init=zero > > > KBUILD_CFLAGS += -enable-trivial-auto-var-init-zero-knowing-it-will-be-removed-from-clang > > > endif > > > > > > +DEBUG_CFLAGS := > > > + > > > # Workaround for GCC versions < 5.0 > > > # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61801 > > > ifdef CONFIG_CC_IS_GCC > > > -DEBUG_CFLAGS := $(call cc-ifversion, -lt, 0500, $(call cc-option, -fno-var-tracking-assignments)) > > > +DEBUG_CFLAGS += $(call cc-ifversion, -lt, 0500, $(call cc-option, -fno-var-tracking-assignments)) > > > endif > > > > > > ifdef CONFIG_DEBUG_INFO > > > -- > > > 2.27.0 > > > > > > > -- > Best Regards > Masahiro Yamada