libc_r is deprecated

Peter Wemm peter at wemm.org
Tue Oct 25 16:49:22 PDT 2005


On Tuesday 25 October 2005 04:24 pm, Daniel Eischen wrote:
> On Tue, 25 Oct 2005, Peter Wemm wrote:
> > (libpthread is a major drama to get working)
>
> Curious...  Why is that?

Because kern_kse.c wants to do copyin/copyout of the 64 bit format 
thread mailboxes, even when the userland is expecting and using the 32 
bit layout of mailboxes.  Not to mention that the first item in one of 
the structs is a ucontext_t, which is different sizes on i386 and 
amd64.

It might be possible to build a special hybrid 32 bit libpthread.so that 
uses the 64 bit layout of these structs.  But then it has to convert 
the ucontext itself and deal with both formats.

I expect libthr to be easier to get working because it doesn't have a 
binary blob for its communication format.  I haven't checked for a 
while.  It used to depend on the missing 32 bit wrappers for 
getcontext/setcontext/swapcontext.  But those have been implemented 
now, there probably isn't much more work needed to get it working.  But 
again, I haven't looked for a while.
-- 
Peter Wemm - peter at wemm.org; peter at FreeBSD.org; peter at yahoo-inc.com
"All of this is for nothing if we don't go to the stars" - JMS/B5


More information about the freebsd-arch mailing list