NVIDIA and TLS
Daniel Eischen
eischen at vigrid.com
Wed Jun 18 13:14:24 PDT 2003
On Wed, 18 Jun 2003, Gareth Hughes wrote:
> On Wed, 18 Jun 2003, Daniel Eischen wrote:
> >
> > On Sat, 14 Jun 2003, Andy Ritger wrote:
> > > The current NVIDIA FreeBSD driver only supports one threading library
> > > on FreeBSD for thread-safe, multi-threaded OpenGL applications: the
> > > FreeBSD port of linux-threads. The NVIDIA FreeBSD OpenGL driver uses
> > > both the i386_set_ldt system call and %gs to support high performance
> > > native OpenGL applications.
> >
> > One question. How does using %gs work in libc_r? Thread switches
> > in libc_r use setjmp()/longjmp() neither of which save and restore
> > %gs. If OpenGL sets %gs, libc_r will not change it when threads are
> > switched.
> >
> > Is NVIDIA's OpenGL suppose to be thread-safe for libc_r? I don't
> > see how it can be. What am I missing?
>
> To quote the quote from Andy you used:
>
> The current NVIDIA FreeBSD driver only supports one threading library
> on FreeBSD for thread-safe, multi-threaded OpenGL applications: the
> FreeBSD port of linux-threads.
Hmm, for some reason I was under the impression that it
was supposedly thread-safe with libc_r. Oh well, go figure.
--
Dan Eischen
More information about the freebsd-threads
mailing list