This is the mail archive of the
glibc-bugs@sources.redhat.com
mailing list for the glibc project.
[Bug linuxthreads/674] Error compiling linuxthreads in glibc 2.3.4
- From: "nix at esperi dot org dot uk" <sourceware-bugzilla at sources dot redhat dot com>
- To: glibc-bugs at sources dot redhat dot com
- Date: 2 Feb 2005 07:57:18 -0000
- Subject: [Bug linuxthreads/674] Error compiling linuxthreads in glibc 2.3.4
- References: <20050117073135.674.andihartmann@freenet.de>
- Reply-to: sourceware-bugzilla at sources dot redhat dot com
------- Additional Comments From nix at esperi dot org dot uk 2005-02-02 07:57 -------
(In reply to comment #3)
> > 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.
Yes it will: manager.c makes that quite clear.
So it looks like the constraints we face are as follows:
- if TLS is not available, __thread is not available, or the linuxthreads add-on
is in use and FLOATING_STACKS are not supportable, then _errno and _h_errno must
be compiled into libc, and a TLS cannot be used for errno.
- TLS support must nonetheless be compiled into rtld, because otherwise that
rtld couldn't successfully interoperate with an NPTL-enabled glibc (as I
understand it: that's definitely a goal or almost every distributor will scream).
The hard part is how we determine from errno.c, during libc compilation, whether
the linuxthreads add-on is in use and whether floating stacks are supported...
... I really don't like mentioning linuxthreads or floating stacks in errno.c.
There must be a better way.
--
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.