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

Re: [Xen-devel] fsincos emulation on AMD CPUs



On 12/15/2011 09:38 AM, Jan Beulich wrote:
All,

in the light of erratum #573 I'm wondering if we need to tweak or
conditionally suppress fsincos emulation. The question is whether there
is any possibility for getting the emulator to hit this instruction on AMD
(as no real mode emulation ought to be taking place there), i.e.
whether there are places where emulation gets continued eagerly
in anticipation of the need for emulation on a nearby instruction.

This can happen with PAE + shadow pagetables.

There's also the case when a user process issues an instruction to an MMIO region, and another thread replaces the instruction with another (fsincos in this case), racing with the emulator until the emulator sees fsincos instead of the MMIO instruction.

If you really cared, perhaps fsincos can be replaced by this sequence in the emulator:

                    ; x
    fld   %st       ; x x
    fsin            ; x sin(x)
    fxch  %st(1)    ; sin(x) x
    fcos            ; sin(x) cos(x)

Paolo


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.