WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

RE: [Xen-devel] Re: Reproducable data corruption on xen-unstable

On Fri, 4 Feb 2005, Ian Pratt wrote:

If it occurred just under the 'vesa' X server I'd be very suspicious
that we had an FP save/restore bug in the vm86 support code. I'm not
sure whether the savage server uses vm86 or not. Probably not.

It doesn't, according to strace.

On the assumption that this _is_ an FP save/restore bug, I was trying to find the FP save/restore code in the xen-patched kernel. I'm not familiar with low-level kernel issues like this. What I am trying to find is, where does fxrstor (or whatever) get invoked from, when the kernel is doing a normal user-process-to-user-process context switch? As far as I can tell,
the idea seems to be that you don't bother to restore the FPU state
immediately - if and when the new process tries to access the FPU for the first time, the CPU automatically generates a trap, and only then does Linux restore the saved FPU state for that process - apparently in arch/xen/i386/kernel/entry.S under ENTRY(device_no_available), if my guess is right.

Is that correct?

If that's the case, then, again still working on the assumption that it's an FPU state bug, looks like it could only be one of the following:

 1. Something leaves the FPU in a state where it has bogus data in it,
    but it won't trap to tell the kernel to restore the old, correct data
 2. Something forgets to save the FPU state when context-switching from
one userland process to another
3. Something is overwriting the saved fpu state with bogus data (seems unlikely) 4. Something in the kernel or in xen is using the FPU (extremely unlikely, since both appear to now be compiled with soft-math).

Is my reasoning sound? I'm a _little_ out of my depth here!

--
Robin


-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting
Tool for open source databases. Create drag-&-drop reports. Save time
by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc.
Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/xen-devel