[PATCH] ARM: tegra: remove board_init_funcs array
Thierry Reding
thierry.reding at gmail.com
Wed Jun 22 06:34:57 PDT 2016
On Wed, Jun 22, 2016 at 03:05:35PM +0200, Arnd Bergmann wrote:
> On Wednesday, June 22, 2016 2:50:13 PM CEST Thierry Reding wrote:
> >
> > Not enough information to check signature validity.
> > On Wed, Jun 22, 2016 at 02:39:41PM +0200, Arnd Bergmann wrote:
> > > In a configuration that enables CONFIG_UBSAN_SANITIZE_ALL, I am getting
> > > a section mismatch warning for tegra20:
> > >
> > > WARNING: arch/arm/mach-tegra/built-in.o(.data+0x6e0): Section mismatch in reference from the variable board_init_funcs to the function .init.text:paz00_init()
> > >
> > > The array is no longer useful here since there is only one entry,
> > > so we can simply call the function directly after checking
> > > of_machine_is_compatible(). This fixes the section mismatch
> > > and is easier to read.
> > >
> > > Signed-off-by: Arnd Bergmann <arnd at arndb.de>
> > > ---
> > > arch/arm/mach-tegra/tegra.c | 24 +++---------------------
> > > 1 file changed, 3 insertions(+), 21 deletions(-)
> >
> > Shouldn't these section mismatches show up with default builds? I
> > haven't seen any when building Tegra configurations.
> >
> > I'm going to apply this patch because I think it's useful, but it sure
> > would be nice to know why I need to enable this new UBSAN stuff to get
> > these warnings now.
>
> It depends on the how aggressive the inlining works. Without UBSAN,
> gcc seems to completely optimze away the loop and just the function
> directly, which it can do because 'board_init_funcs' is static.
>
> I assume that the UBSAN object overflow check has the effect of
> not dropping the symbol so it can check the size.
Ah, I see. Thanks.
Thierry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20160622/772f5b9b/attachment-0001.sig>
More information about the linux-arm-kernel
mailing list