[RFC PATCH u-boot 02/12] sandbox: errno: avoid conflict with libc's errno

Marek Behun marek.behun at nic.cz
Fri Mar 5 16:37:11 CET 2021


On Fri, 5 Mar 2021 11:00:45 +0800
Bin Meng <bmeng.cn at gmail.com> wrote:

> On Wed, Mar 3, 2021 at 12:13 PM Marek Behún <marek.behun at nic.cz> wrote:
> >
> > When building with LTO, the system libc's `errno` variable used in
> > arch/sandbox/cpu/os.c conflicts with U-Boot's `errno` (defined in
> > lib/errno.c) with the following error:
> >  .../ld: errno@@GLIBC_PRIVATE: TLS definition in /lib64/libc.so.6
> >          section .tbss mismatches non-TLS reference in
> >          /tmp/u-boot.EQlEXz.ltrans0.ltrans.o  
> 
> Do you know if this is the expected behavior when enabling LTO on the compiler?

I don't, but this is a bug anyway. The symbol clashes with the symbol
from glibc. Does somebody know whether the usage of this symbol in os.c
does really use glibc's version or U-Boot's one?


More information about the U-Boot mailing list