Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Jan 2002 14:52:20 -0700
From:      Nate Williams <nate@yogotech.com>
To:        jb@Freebsd.org
Cc:        Nate Williams <nate@yogotech.com>, Dan Eischen <eischen@vigrid.com>, arch@Freebsd.org
Subject:   Re: Request for review: getcontext, setcontext, etc
Message-ID:  <15418.6292.572229.497144@caddis.yogotech.com>
In-Reply-To: <Pine.SUN.3.91.1020107163310.29377A-100000@pcnet1.pcnet.com>
References:  <15418.4935.657413.312252@caddis.yogotech.com> <Pine.SUN.3.91.1020107163310.29377A-100000@pcnet1.pcnet.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> On Mon, 7 Jan 2002, Nate Williams wrote:
> > > Search for FP_SAVE_UC and FP_RESTORE_UC.  You should find it in
> > > pthread_private.h (where it is defined) and referenced in
> > > uthread_kern.c and uthread_sig.c (src/lib/libc_r/uthread/).
> > 
> > Found it.  However, I could find the definition for mc_fpregs.
> 
> See src/sys/sys/ucontext.h and src/sys/i386/include/ucontext.h.
> 
> > Also, forgive my ignorance, but why are we using fnsave instead of
> > fsave?  From my reading of the x86 manuals, it would seem that there is
> > the possibility of getting bogus FPU results with fnsave (vs. fsave)
> > since by using fsave, we give the FPU a chance to finish up the current
> > FPU operations before we save the state?  I could see where they might
> > be a race where we might end up storing intermediate results of the FPU
> > in some instances.
> > 
> > Or, is there something else I'm missing?  (The reason I ask is that the
> > JDK uses fsave to be 'safe', but maybe it's not buying us anything other
> > than warm fuzzies. :)
> 
> I don't know :-)  That's what it was using when John Birrell was
> maintaining libc_r.  I can always change it...

How about it John?  Why is the thread code using 'fnsave' vs. 'fsave'?
Are they any gotchas from it?


Nate

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




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