This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libc/19826] invalid pointer returned from __tls_get_addr with static linking


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

--- Comment #9 from Alexandre Oliva <aoliva at sourceware dot org> ---
Err...  I don't see where _dl_allocate_tls_init is called either.  AFAICT it is
__libc_setup_tls (csu/libc-tls.c) that sets up the DTV in static programs.  The
weirdness I see is that it appears to set up DTV[2] with the main program's TLS
static block pointer, but then __tls_get_addr appears to access DTV[1].
I'm still trying to create a static binary linked with current glibc that will
run on either my phone (Neo FreeRunner) or my BBB, but I'm not having much luck
so far.  Maybe I'll resort to the Yeeloong: it seems like the same problem
occurs on MIPS.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]