linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Nick Desaulniers <ndesaulniers@google.com>
To: Fangrui Song <maskray@google.com>,
	Masahiro Yamada <masahiroy@kernel.org>
Cc: Nathan Chancellor <nathan@kernel.org>,
	Nathan Chancellor <natechancellor@gmail.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Sedat Dilek <sedat.dilek@gmail.com>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	clang-built-linux <clang-built-linux@googlegroups.com>,
	Linux Kbuild mailing list <linux-kbuild@vger.kernel.org>,
	linux-arch <linux-arch@vger.kernel.org>,
	Jakub Jelinek <jakub@redhat.com>,
	Caroline Tice <cmtice@google.com>,
	Nick Clifton <nickc@redhat.com>, Yonghong Song <yhs@fb.com>,
	Jiri Olsa <jolsa@kernel.org>, Andrii Nakryiko <andrii@kernel.org>,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	Arvind Sankar <nivedita@alum.mit.edu>
Subject: Re: [PATCH v7 1/2] Kbuild: make DWARF version a choice
Date: Wed, 3 Feb 2021 22:08:05 -0800	[thread overview]
Message-ID: <CAKwvOdmCt0ueauZ98VwgY7bx_bY8KOwXz6q-aexVQ6JCPaW7GA@mail.gmail.com> (raw)
In-Reply-To: <20210204033210.ie2a5zuumtlb4jth@google.com>

On Wed, Feb 3, 2021 at 7:32 PM Fangrui Song <maskray@google.com> wrote:
>
> On 2021-02-04, Masahiro Yamada wrote:
> >On Sat, Jan 30, 2021 at 10:52 AM Nathan Chancellor <nathan@kernel.org> wrote:
> >>
> >> On Fri, Jan 29, 2021 at 04:44:00PM -0800, Nick Desaulniers wrote:
> >> > Modifies CONFIG_DEBUG_INFO_DWARF4 to be a member of a choice which is
> >> > the default. Does so in a way that's forward compatible with existing
> >> > configs, and makes adding future versions more straightforward.
> >> >
> >> > GCC since ~4.8 has defaulted to this DWARF version implicitly.
> >> >
> >> > Suggested-by: Arvind Sankar <nivedita@alum.mit.edu>
> >> > Suggested-by: Fangrui Song <maskray@google.com>
> >> > Suggested-by: Nathan Chancellor <nathan@kernel.org>
> >> > Suggested-by: Masahiro Yamada <masahiroy@kernel.org>
> >> > Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> >>
> >> One comment below:
> >>
> >> Reviewed-by: Nathan Chancellor <nathan@kernel.org>
> >>
> >> > ---
> >> >  Makefile          |  5 ++---
> >> >  lib/Kconfig.debug | 16 +++++++++++-----
> >> >  2 files changed, 13 insertions(+), 8 deletions(-)
> >> >
> >> > diff --git a/Makefile b/Makefile
> >> > index 95ab9856f357..d2b4980807e0 100644
> >> > --- a/Makefile
> >> > +++ b/Makefile
> >> > @@ -830,9 +830,8 @@ ifneq ($(LLVM_IAS),1)
> >> >  KBUILD_AFLAGS        += -Wa,-gdwarf-2
> >>
> >> It is probably worth a comment somewhere that assembly files will still
> >> have DWARF v2.
> >
> >I agree.
> >Please noting the reason will be helpful.
> >
> >Could you summarize Jakub's comment in short?
> >https://patchwork.kernel.org/project/linux-kbuild/patch/20201022012106.1875129-1-ndesaulniers@google.com/#23727667
> >
> >
> >
> >
> >
> >
> >One more question.
> >
> >
> >Can we remove -g option like follows?
> >
> >
> > ifdef CONFIG_DEBUG_INFO_SPLIT
> > DEBUG_CFLAGS   += -gsplit-dwarf
> >-else
> >-DEBUG_CFLAGS   += -g
> > endif
>
> GCC 11/Clang 12 -gsplit-dwarf no longer imply -g2
> (https://reviews.llvm.org/D80391). May be worth checking whether
> -gsplit-dwarf is used without a debug info enabling option.

Indeed, I also remember -g was required for
-fno-eliminate-unused-debug-types, used by libabigail.
https://reviews.llvm.org/D80242
Masahiro, respectfully, I will not touch removing -g in this series.
I suspect it will be its own can of worms.

>
> >
> >
> >
> >
> >In the current mainline code,
> >-g is the only debug option
> >if CONFIG_DEBUG_INFO_DWARF4 is disabled.
> >
> >
> >The GCC manual says:
> >https://gcc.gnu.org/onlinedocs/gcc-10.2.0/gcc/Debugging-Options.html#Debugging-Options
> >
> >
> >-g
> >
> >    Produce debugging information in the operating system’s
> >    native format (stabs, COFF, XCOFF, or DWARF).
> >    GDB can work with this debugging information.
> >
> >
> >Of course, we expect the -g option will produce
> >the debug info in the DWARF format.
> >
> >
> >
> >
> >
> >With this patch set applied, it is very explicit.
> >
> >Only the format type, but also the version.
> >
> >The compiler will be given either
> >-gdwarf-4 or -gdwarf-5,
> >making the -g option redundant, I think.
>
> -gdwarf-N does imply -g2 but personally I'd not suggest remove it if it
> already exists. The non-orthogonality is the reason Clang has
> -fdebug-default-version (https://reviews.llvm.org/D69822).

-- 
Thanks,
~Nick Desaulniers

  reply	other threads:[~2021-02-04  6:09 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-30  0:43 [PATCH v7 0/2] Kbuild: DWARF v5 support Nick Desaulniers
2021-01-30  0:44 ` [PATCH v7 1/2] Kbuild: make DWARF version a choice Nick Desaulniers
2021-01-30  1:52   ` Nathan Chancellor
2021-02-03 22:23     ` Masahiro Yamada
2021-02-03 22:25       ` Masahiro Yamada
2021-02-03 23:16       ` Nick Desaulniers
2021-02-04  0:29         ` Masahiro Yamada
2021-02-04  6:15           ` Nick Desaulniers
2021-02-04  3:32       ` Fangrui Song
2021-02-04  6:08         ` Nick Desaulniers [this message]
2021-02-04  6:13     ` Nick Desaulniers
2021-02-04 10:39   ` Mark Wielaard
2021-02-04 19:18     ` Nick Desaulniers
2021-02-04 19:56       ` Mark Wielaard
2021-02-04 20:04         ` Nick Desaulniers
2021-02-04 20:28           ` Mark Wielaard
2021-02-04 22:06             ` Nick Desaulniers
2021-02-04 22:36               ` Fangrui Song
2021-02-05 12:49               ` Mark Wielaard
2021-02-05 21:18                 ` Nick Desaulniers
2021-02-06 15:11                   ` Mark Wielaard
2021-01-30  0:44 ` [PATCH v7 2/2] Kbuild: implement support for DWARF v5 Nick Desaulniers
2021-01-30  1:53   ` Nathan Chancellor
2021-01-30 23:10   ` Sedat Dilek
2021-01-30 23:39     ` Sedat Dilek
2021-01-31  0:37     ` Fāng-ruì Sòng
2021-01-31  0:39       ` Sedat Dilek
2021-02-03 23:06   ` Masahiro Yamada
2021-02-03 23:27     ` Nick Desaulniers
2021-02-04  0:33       ` Masahiro Yamada
2021-02-03 23:36     ` Jakub Jelinek
2021-02-04  0:33       ` Masahiro Yamada
2021-01-30 23:59 ` [PATCH v7 0/2] Kbuild: DWARF v5 support Sedat Dilek

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=CAKwvOdmCt0ueauZ98VwgY7bx_bY8KOwXz6q-aexVQ6JCPaW7GA@mail.gmail.com \
    --to=ndesaulniers@google.com \
    --cc=acme@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=andrii@kernel.org \
    --cc=clang-built-linux@googlegroups.com \
    --cc=cmtice@google.com \
    --cc=jakub@redhat.com \
    --cc=jolsa@kernel.org \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=masahiroy@kernel.org \
    --cc=maskray@google.com \
    --cc=natechancellor@gmail.com \
    --cc=nathan@kernel.org \
    --cc=nickc@redhat.com \
    --cc=nivedita@alum.mit.edu \
    --cc=sedat.dilek@gmail.com \
    --cc=yhs@fb.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).