[Bug linuxthreads/674] Error compiling linuxthreads in glibc 2.3.4

nix at esperi dot org dot uk sourceware-bugzilla@sources.redhat.com
Tue Feb 1 20:58:00 GMT 2005


------- Additional Comments From nix at esperi dot org dot uk  2005-02-01 20:58 -------
> libc's decision is obviously correct: if __thread is available, you *should* use
> it for errno; this won't change merely because floating stacks happen to be
> available in one particular threading implementation. So something needs to
> change in linuxthreads.
> 
> I'm still not sure what. That code is a bit of a maze, with HAVE___THREAD and
> USE_TLS interacting in ways that are still unclear to me.

Well, there's code in the linuxthreads Makefile that tries to deal with this
case, by pulling the errno.c and herrno.c files out of libc and forcibly linking
against them, but that doesn't help because errno.c and herrno.c aren't
declaring _errno, _h_errno or _res, because USE___THREAD was turned on when they
were linked.

Perhaps we'll have to use an rtld-Rules-like hack to recompile errno.c and
herrno.c... I really would rather avoid that, though.


All this mess just to point at the primary copy of errno.c in the main thread.
Why was errno ever invented. Curses.

-- 


http://sources.redhat.com/bugzilla/show_bug.cgi?id=674

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.



More information about the Glibc-bugs mailing list