2017-08-20 00:38:26

by Fengguang Wu

[permalink] [raw]
Subject: undefined reference to `_GLOBAL_OFFSET_TABLE_'

Hi Nicholas,

FYI, the error/warning still remains.

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 58d4e450a490d5f02183f6834c12550ba26d3b47
commit: 799c43415442414b1032580c47684cb709dfed6d kbuild: thin archives make default for all archs
date: 7 weeks ago
config: microblaze-allnoconfig (attached as .config)
compiler: microblaze-linux-gcc (GCC) 6.2.0
reproduce:
wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 799c43415442414b1032580c47684cb709dfed6d
# save the attached .config to linux build tree
make.cross ARCH=microblaze

All errors (new ones prefixed by >>):

mm/slub.o: In function `__slab_free.isra.13':
>> (.text+0x1038): undefined reference to `_GLOBAL_OFFSET_TABLE_'
scripts/link-vmlinux.sh: line 93: 48917 Segmentation fault ${LD} ${LDFLAGS} ${LDFLAGS_vmlinux} -o ${2} -T ${lds} ${objects}

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation


Attachments:
(No filename) (1.12 kB)
.config.gz (4.77 kB)
Download all attachments

2017-08-20 03:37:07

by Nicholas Piggin

[permalink] [raw]
Subject: Re: undefined reference to `_GLOBAL_OFFSET_TABLE_'

On Sun, 20 Aug 2017 08:37:36 +0800
kbuild test robot <[email protected]> wrote:

> Hi Nicholas,
>
> FYI, the error/warning still remains.

Still same answer as before, i.e., it seems to be this toolchain bug:

https://sourceware.org/bugzilla/show_bug.cgi?id=21017

I've had no response from the microblaze maintainer, so please stop
generating this warning now. If we get a bug report from a user who
actually cares and will test toolchain fixes then we can easily work
with them.

Many thanks for the very good service this build system provides!

Thanks,
Nick

>
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: 58d4e450a490d5f02183f6834c12550ba26d3b47
> commit: 799c43415442414b1032580c47684cb709dfed6d kbuild: thin archives make default for all archs
> date: 7 weeks ago
> config: microblaze-allnoconfig (attached as .config)
> compiler: microblaze-linux-gcc (GCC) 6.2.0
> reproduce:
> wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
> chmod +x ~/bin/make.cross
> git checkout 799c43415442414b1032580c47684cb709dfed6d
> # save the attached .config to linux build tree
> make.cross ARCH=microblaze
>
> All errors (new ones prefixed by >>):
>
> mm/slub.o: In function `__slab_free.isra.13':
> >> (.text+0x1038): undefined reference to `_GLOBAL_OFFSET_TABLE_'
> scripts/link-vmlinux.sh: line 93: 48917 Segmentation fault ${LD} ${LDFLAGS} ${LDFLAGS_vmlinux} -o ${2} -T ${lds} ${objects}
>
> ---
> 0-DAY kernel test infrastructure Open Source Technology Center
> https://lists.01.org/pipermail/kbuild-all Intel Corporation

2017-08-22 02:00:01

by Fengguang Wu

[permalink] [raw]
Subject: Re: undefined reference to `_GLOBAL_OFFSET_TABLE_'

Hi Nick,

On Sun, Aug 20, 2017 at 01:36:37PM +1000, Nicholas Piggin wrote:
>On Sun, 20 Aug 2017 08:37:36 +0800
>kbuild test robot <[email protected]> wrote:
>
>> Hi Nicholas,
>>
>> FYI, the error/warning still remains.
>
>Still same answer as before, i.e., it seems to be this toolchain bug:
>
>https://sourceware.org/bugzilla/show_bug.cgi?id=21017
>
>I've had no response from the microblaze maintainer, so please stop
>generating this warning now. If we get a bug report from a user who
>actually cares and will test toolchain fixes then we can easily work
>with them.

OK. I'll ignore this error for now. Sorry for the noise!

>Many thanks for the very good service this build system provides!

You are welcome. :)

Thanks,
Fengguang

>>
>> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
>> head: 58d4e450a490d5f02183f6834c12550ba26d3b47
>> commit: 799c43415442414b1032580c47684cb709dfed6d kbuild: thin archives make default for all archs
>> date: 7 weeks ago
>> config: microblaze-allnoconfig (attached as .config)
>> compiler: microblaze-linux-gcc (GCC) 6.2.0
>> reproduce:
>> wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>> chmod +x ~/bin/make.cross
>> git checkout 799c43415442414b1032580c47684cb709dfed6d
>> # save the attached .config to linux build tree
>> make.cross ARCH=microblaze
>>
>> All errors (new ones prefixed by >>):
>>
>> mm/slub.o: In function `__slab_free.isra.13':
>> >> (.text+0x1038): undefined reference to `_GLOBAL_OFFSET_TABLE_'
>> scripts/link-vmlinux.sh: line 93: 48917 Segmentation fault ${LD} ${LDFLAGS} ${LDFLAGS_vmlinux} -o ${2} -T ${lds} ${objects}
>>
>> ---
>> 0-DAY kernel test infrastructure Open Source Technology Center
>> https://lists.01.org/pipermail/kbuild-all Intel Corporation

2017-08-22 09:19:13

by Michal Simek

[permalink] [raw]
Subject: Re: undefined reference to `_GLOBAL_OFFSET_TABLE_'

On 20.8.2017 05:36, Nicholas Piggin wrote:
> On Sun, 20 Aug 2017 08:37:36 +0800
> kbuild test robot <[email protected]> wrote:
>
>> Hi Nicholas,
>>
>> FYI, the error/warning still remains.
>
> Still same answer as before, i.e., it seems to be this toolchain bug:
>
> https://sourceware.org/bugzilla/show_bug.cgi?id=21017
>
> I've had no response from the microblaze maintainer, so please stop
> generating this warning now. If we get a bug report from a user who
> actually cares and will test toolchain fixes then we can easily work
> with them.
>
> Many thanks for the very good service this build system provides!

Can you please point me to the log?

Thanks,
Michal

--
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: http://www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Xilinx Microblaze
Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs
U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP SoCs



Attachments:
signature.asc (198.00 B)
OpenPGP digital signature

2017-08-22 12:15:00

by Nicholas Piggin

[permalink] [raw]
Subject: Re: undefined reference to `_GLOBAL_OFFSET_TABLE_'

On Tue, 22 Aug 2017 11:19:02 +0200
Michal Simek <[email protected]> wrote:

> On 20.8.2017 05:36, Nicholas Piggin wrote:
> > On Sun, 20 Aug 2017 08:37:36 +0800
> > kbuild test robot <[email protected]> wrote:
> >
> >> Hi Nicholas,
> >>
> >> FYI, the error/warning still remains.
> >
> > Still same answer as before, i.e., it seems to be this toolchain bug:
> >
> > https://sourceware.org/bugzilla/show_bug.cgi?id=21017
> >
> > I've had no response from the microblaze maintainer, so please stop
> > generating this warning now. If we get a bug report from a user who
> > actually cares and will test toolchain fixes then we can easily work
> > with them.
> >
> > Many thanks for the very good service this build system provides!
>
> Can you please point me to the log?

Hmm, don't know if they keep a full log, but the error is

mm/slub.o: In function `__slab_free.isra.13':
>> (.text+0x1038): undefined reference to `_GLOBAL_OFFSET_TABLE_'
scripts/link-vmlinux.sh: line 93: 48917 Segmentation fault ${LD} ${LDFLAGS} ${LDFLAGS_vmlinux} -o ${2} -T ${lds} ${objects}

I suspect the change to thin archives, allowed the linker more
flexibility to satisfy all relocations with GOT relative. And
that would cause the bug.

If you could verify that the upstream kernel build succeeds with
an upstream binutils using allnoconfig, then we could see about
updating the kbuild test robot's toolchain.

Thanks,
Nick