[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAKwvOd=9iqLgdtAWe2h-9n=KUWm_rjCCJJYeop8PS6F+AA0VtA@mail.gmail.com>
Date: Mon, 9 Nov 2020 10:28:21 -0800
From: Nick Desaulniers <ndesaulniers@...gle.com>
To: Nathan Chancellor <natechancellor@...il.com>
Cc: Masahiro Yamada <masahiroy@...nel.org>,
Jakub Jelinek <jakub@...hat.com>,
Linux Kbuild mailing list <linux-kbuild@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
linux-toolchains@...r.kernel.org,
clang-built-linux <clang-built-linux@...glegroups.com>,
Fangrui Song <maskray@...gle.com>,
Sedat Dilek <sedat.dilek@...il.com>,
Dmitry Golovin <dima@...ovin.in>,
Alistair Delva <adelva@...gle.com>,
"# 3.4.x" <stable@...r.kernel.org>
Subject: Re: [PATCH v2 2/4] Kbuild: do not emit debug info for assembly with LLVM_IAS=1
On Wed, Nov 4, 2020 at 10:58 PM Nathan Chancellor
<natechancellor@...il.com> wrote:
>
> On Tue, Nov 03, 2020 at 04:53:41PM -0800, Nick Desaulniers wrote:
> > Clang's integrated assembler produces the warning for assembly files:
> >
> > warning: DWARF2 only supports one section per compilation unit
> >
> > If -Wa,-gdwarf-* is unspecified, then debug info is not emitted. This
>
> Is this something that should be called out somewhere? If I understand
> this correctly, LLVM_IAS=1 + CONFIG_DEBUG_INFO=y won't work? Maybe this
> should be handled in Kconfig?
Specifically, debug info will not be emitted, for assembler source
files. It will still be emitted for C source files (via -gdwarf-*).
-Wa,-gdwarf-* only affects assembler file sources.
>
> > will be re-enabled for new DWARF versions in a follow up patch.
> >
> > Enables defconfig+CONFIG_DEBUG_INFO to build cleanly with
> > LLVM=1 LLVM_IAS=1 for x86_64 and arm64.
> >
> > Cc: <stable@...r.kernel.org>
> > Link: https://github.com/ClangBuiltLinux/linux/issues/716
> > Reported-by: Nathan Chancellor <natechancellor@...il.com>
> > Suggested-by: Dmitry Golovin <dima@...ovin.in>
>
> If you happen to respin, Dmitry deserves a Reported-by tag too :)
Sure.
>
> > Suggested-by: Sedat Dilek <sedat.dilek@...il.com>
> > Signed-off-by: Nick Desaulniers <ndesaulniers@...gle.com>
>
> Regardless of the other two comments, this is fine as is as a fix for
> stable to unblock Android + CrOS since we have been running something
> similar to it in CI:
>
> Reviewed-by: Nathan Chancellor <natechancellor@...il.com>
>
> > ---
> > Makefile | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > diff --git a/Makefile b/Makefile
> > index f353886dbf44..75b1a3dcbf30 100644
> > --- a/Makefile
> > +++ b/Makefile
> > @@ -826,7 +826,9 @@ else
> > DEBUG_CFLAGS += -g
> > endif
> >
> > +ifndef LLVM_IAS
>
> Nit: this should probably match the existing LLVM_IAS check
Sure, will send a v3. Going to just send this for now, as it's
blocking some downstream work I'm trying to get done in Android.
>
> ifneq ($(LLVM_IAS),1)
>
> > KBUILD_AFLAGS += -Wa,-gdwarf-2
> > +endif
> >
> > ifdef CONFIG_DEBUG_INFO_DWARF4
> > DEBUG_CFLAGS += -gdwarf-4
> > --
> > 2.29.1.341.ge80a0c044ae-goog
> >
--
Thanks,
~Nick Desaulniers
Powered by blists - more mailing lists