Re: FPU emulator unsafe for SMP?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Feb 15, 2002 at 10:59:09AM +0100, Kevin D. Kissell wrote:
> > > > > I have been chasing a FPU register corruption problem on a SMP box.  The
> > > > > curruption seems to be caused by FPU emulator code.  Is that code SMP safe? 
> > > > > If not, what are the volunerable spots?
> > > > 
> > > > In theory the fp emulation code should be MP safe as the full emulation
> > > > is only accessing it's context in the fp register set of struct
> > > > task_struct.  The 32-bit kernel's fp register switching is entirely broken
> > > > (read: close to non-existant).  Lots of brownie points for somebody to
> > > > backport that from the 64-bit kernel to the 32-bit kernel and forward
> > > > port all the FPU emu bits to the 64-bit kernel ...
> > > > 
> > > 
> > > Brownie sounds good. :-)  So what is the "fp register switching" you are 
> > > referring to?  There is set of code related to lazy fpu context switch,
> > > which seems to be working fine now.
> > >
> > 
> > Hmm, I see. The lazy fpu context switch code is not SMP safe.
> > I see fishy things like "last_task_used_math" etc...
> 
> What, you mean "last_task_used_math" isn't allocated in a
> processor-specific page of kseg3???    ;-)
>

You must be talking about another OS, right? :-)  I don't think 
Linux has processor-specific page, although this sounds like
a good idea to explore.

Jun


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux