Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 19 Jun 2003 00:13:14 -0700
From:      Terry Lambert <tlambert2@mindspring.com>
To:        Daniel Eischen <eischen@vigrid.com>
Cc:        Andy Ritger <ARitger@nvidia.com>
Subject:   Re: NVIDIA and TLS
Message-ID:  <3EF1628A.380EB45F@mindspring.com>
References:  <Pine.GSO.4.10.10306181545500.2178-100000@pcnet5.pcnet.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Daniel Eischen wrote:
> 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?

1)	No other users of %gs.

2)	Thread running at the time of involuntary preemption is
	the thread that gets resumed on the next quantum, with
	no regard to thread priority.

3)	No one (mostly) does a lot of work in signal handlers.

It's not so much that it works on purpose as that it works by
serendipity.

-- Terry



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3EF1628A.380EB45F>