tech-kern archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: [RFC][PATCH] _UC_TLSBASE for all ports
On Sun, Aug 12, 2012 at 10:02:48AM +0200, Martin Husemann wrote:
> So, I see various things coming together in this thread, and I would
> suggest to fix them all with a change beyound what Emmanuel originaly
> proposed:
>
> - the pthread_self() usage and the binding to a register is a property of
> our libpthread implementation, so it should overwrite setcontext and
> swapcontext with its own implementation, and prevent changing of
> the pthread_self() register (by clearing the _UC_TSLBASE flag before
> passing the context on to the libc version or something)
>
> - for that to work, we need to do what Emmanuel originaly proposed
>
> - but also the glusterffs folks should be asked to provide an optional,
> pure pthread based thread pool implementation for portability reasons,
> which will gain the same performance on NetBSD as the swapcontext based
> one.
>
> - however, we should bring back (under slightly different names, and in
> libc)
> the old pure userland setcontext (and friends) that we used to have
> in the N:M libpthread. We have the code for all archs, it is tested, and
> it is usefull for situations like this (and the R runtime in pkgsrc, hi
> Ignatios!)
>
> - manu could then go on and use the new lightweight context functions from
> the previous point to create an improved version of the swapcontext based
> threadpool and speed up glusterffs on NetBSD again
This seems the right approach to me.
--
David A. Holland
dholland%netbsd.org@localhost
Home |
Main Index |
Thread Index |
Old Index