From: Jun Sun <jsun@mvista.com>
To: "Kevin D. Kissell" <kevink@mips.com>
Cc: Ralf Baechle <ralf@oss.sgi.com>, linux-mips@oss.sgi.com
Subject: Re: FPU emulator unsafe for SMP?
Date: Tue, 19 Feb 2002 14:05:14 -0800 [thread overview]
Message-ID: <20020219140514.C25739@mvista.com> (raw)
In-Reply-To: <002b01c1b607$6afbd5c0$10eca8c0@grendel>; from kevink@mips.com on Fri, Feb 15, 2002 at 10:59:09AM +0100
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
next prev parent reply other threads:[~2002-02-19 23:05 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-02-15 1:56 FPU emulator unsafe for SMP? Jun Sun
2002-02-15 2:11 ` Ralf Baechle
2002-02-15 7:20 ` Jun Sun
2002-02-15 8:30 ` Jun Sun
2002-02-15 9:59 ` Kevin D. Kissell
2002-02-15 9:59 ` Kevin D. Kissell
2002-02-19 22:05 ` Jun Sun [this message]
2002-02-19 22:19 ` Ralf Baechle
2002-02-20 0:08 ` Kevin D. Kissell
2002-02-20 0:08 ` Kevin D. Kissell
2002-02-20 1:12 ` Jun Sun
2002-02-20 3:28 ` Greg Lindahl
2002-02-20 4:24 ` Jun Sun
2002-02-20 4:32 ` Daniel Jacobowitz
2002-02-20 9:48 ` Jun Sun
2002-02-20 10:14 ` Kevin D. Kissell
2002-02-20 10:14 ` Kevin D. Kissell
2002-02-20 13:50 ` Ralf Baechle
2002-02-20 20:53 ` Greg Lindahl
2002-02-20 13:24 ` Ralf Baechle
2002-02-20 4:48 ` Greg Lindahl
2002-02-20 9:27 ` Florian Lohoff
2002-02-20 13:18 ` Ralf Baechle
2002-02-20 9:56 ` Geert Uytterhoeven
2002-02-20 11:14 ` Kevin D. Kissell
2002-02-20 13:10 ` Ralf Baechle
2002-02-20 8:27 ` Dominic Sweetman
2002-02-20 9:30 ` Florian Lohoff
2002-02-20 13:56 ` Ralf Baechle
2002-02-20 13:09 ` Ralf Baechle
2002-02-20 14:42 ` Kevin D. Kissell
2002-02-20 14:42 ` Kevin D. Kissell
2002-02-20 14:46 ` Maciej W. Rozycki
2002-02-20 15:05 ` Ralf Baechle
2002-02-20 15:45 ` Maciej W. Rozycki
2002-02-20 13:03 ` Ralf Baechle
2002-02-15 8:14 ` Kevin D. Kissell
2002-02-15 8:14 ` Kevin D. Kissell
2002-02-15 10:57 ` Ralf Baechle
2002-02-19 22:02 ` Jun Sun
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20020219140514.C25739@mvista.com \
--to=jsun@mvista.com \
--cc=kevink@mips.com \
--cc=linux-mips@oss.sgi.com \
--cc=ralf@oss.sgi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox