From: Nathan Chancellor <nathan@kernel.org>
To: Nick Desaulniers <ndesaulniers@google.com>
Cc: Alexander Lobakin <alobakin@pm.me>,
Thomas Bogendoerfer <tsbogend@alpha.franken.de>,
Arnd Bergmann <arnd@arndb.de>,
Nathan Chancellor <natechancellor@gmail.com>,
Huacai Chen <chenhuacai@kernel.org>,
Pei Huang <huangpei@loongson.cn>,
Kees Cook <keescook@chromium.org>,
Sami Tolvanen <samitolvanen@google.com>,
Fangrui Song <maskray@google.com>,
Jiaxun Yang <jiaxun.yang@flygoat.com>,
Ralf Baechle <ralf@linux-mips.org>,
Corey Minyard <cminyard@mvista.com>,
kernel test robot <lkp@intel.com>,
linux-mips@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>,
linux-arch <linux-arch@vger.kernel.org>,
clang-built-linux <clang-built-linux@googlegroups.com>
Subject: Re: [PATCH mips-next] vmlinux.lds.h: catch more UBSAN symbols into .data
Date: Tue, 16 Feb 2021 11:54:47 -0700 [thread overview]
Message-ID: <20210216185447.GA64303@24bbad8f3778> (raw)
In-Reply-To: <CAKwvOdnBgpRff6wa8u1_ogCm_pRey5d_Yro4UCa_O_=tib0FHQ@mail.gmail.com>
On Tue, Feb 16, 2021 at 09:56:32AM -0800, 'Nick Desaulniers' via Clang Built Linux wrote:
> On Tue, Feb 16, 2021 at 12:55 AM Alexander Lobakin <alobakin@pm.me> wrote:
> >
> > LKP triggered lots of LD orphan warnings [0]:
>
> Thanks for the patch, just some questions.
>
> With which linker? Was there a particular config from the bot's
> report that triggered this?
Looks like GNU ld 2.34 (see below).
> >
> > mipsel-linux-ld: warning: orphan section `.data.$Lubsan_data299' from
> > `init/do_mounts_rd.o' being placed in section `.data.$Lubsan_data299'
> > mipsel-linux-ld: warning: orphan section `.data.$Lubsan_data183' from
> > `init/do_mounts_rd.o' being placed in section `.data.$Lubsan_data183'
> > mipsel-linux-ld: warning: orphan section `.data.$Lubsan_type3' from
> > `init/do_mounts_rd.o' being placed in section `.data.$Lubsan_type3'
> > mipsel-linux-ld: warning: orphan section `.data.$Lubsan_type2' from
> > `init/do_mounts_rd.o' being placed in section `.data.$Lubsan_type2'
> > mipsel-linux-ld: warning: orphan section `.data.$Lubsan_type0' from
> > `init/do_mounts_rd.o' being placed in section `.data.$Lubsan_type0'
> >
> > [...]
> >
> > Seems like "unnamed data" isn't the only type of symbols that UBSAN
> > instrumentation can emit.
> > Catch these into .data with the wildcard as well.
> >
> > [0] https://lore.kernel.org/linux-mm/202102160741.k57GCNSR-lkp@intel.com
> >
> > Fixes: f41b233de0ae ("vmlinux.lds.h: catch UBSAN's "unnamed data" into data")
> > Reported-by: kernel test robot <lkp@intel.com>
> > Signed-off-by: Alexander Lobakin <alobakin@pm.me>
> > ---
> > include/asm-generic/vmlinux.lds.h | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
> > index cc659e77fcb0..83537e5ee78f 100644
> > --- a/include/asm-generic/vmlinux.lds.h
> > +++ b/include/asm-generic/vmlinux.lds.h
> > @@ -95,7 +95,7 @@
> > */
> > #ifdef CONFIG_LD_DEAD_CODE_DATA_ELIMINATION
> > #define TEXT_MAIN .text .text.[0-9a-zA-Z_]*
> > -#define DATA_MAIN .data .data.[0-9a-zA-Z_]* .data..L* .data..compoundliteral* .data.$__unnamed_*
> > +#define DATA_MAIN .data .data.[0-9a-zA-Z_]* .data..L* .data..compoundliteral* .data.$__unnamed_* .data.$Lubsan_*
>
> Are these sections only created when
> CONFIG_LD_DEAD_CODE_DATA_ELIMINATION is selected? (Same with
> .data.$__unnamed_*)
Most likely, as that config is set in the problematic config. My guess
is that these are GCC's equivalent of Clang's .data.$__unnamed_...
$ crl https://lore.kernel.org/linux-mm/202102160741.k57GCNSR-lkp@intel.com/2-a.bin | gzip -d | rg "CONFIG_LD_DEAD_CODE|CONFIG_LD_VERSION"
CONFIG_LD_VERSION=234000000
CONFIG_LD_DEAD_CODE_DATA_ELIMINATION=y
> > #define SDATA_MAIN .sdata .sdata.[0-9a-zA-Z_]*
> > #define RODATA_MAIN .rodata .rodata.[0-9a-zA-Z_]* .rodata..L*
> > #define BSS_MAIN .bss .bss.[0-9a-zA-Z_]* .bss..compoundliteral*
> > --
> > 2.30.1
> >
> >
>
>
> --
> Thanks,
> ~Nick Desaulniers
>
next prev parent reply other threads:[~2021-02-16 18:55 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-16 8:55 [PATCH mips-next] vmlinux.lds.h: catch more UBSAN symbols into .data Alexander Lobakin
2021-02-16 17:10 ` Thomas Bogendoerfer
2021-02-16 17:56 ` Nick Desaulniers
2021-02-16 18:54 ` Nathan Chancellor [this message]
2021-02-16 19:03 ` Alexander Lobakin
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=20210216185447.GA64303@24bbad8f3778 \
--to=nathan@kernel.org \
--cc=alobakin@pm.me \
--cc=arnd@arndb.de \
--cc=chenhuacai@kernel.org \
--cc=clang-built-linux@googlegroups.com \
--cc=cminyard@mvista.com \
--cc=huangpei@loongson.cn \
--cc=jiaxun.yang@flygoat.com \
--cc=keescook@chromium.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mips@vger.kernel.org \
--cc=lkp@intel.com \
--cc=maskray@google.com \
--cc=natechancellor@gmail.com \
--cc=ndesaulniers@google.com \
--cc=ralf@linux-mips.org \
--cc=samitolvanen@google.com \
--cc=tsbogend@alpha.franken.de \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.