[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH] x86/emul: Corrections to cmpxchg{8, 16}b emulation (to fix 32bit PV guests)
On 20/01/17 09:54, Jan Beulich wrote: >>>> On 20.01.17 at 09:52, <andrew.cooper3@xxxxxxxxxx> wrote: >> @@ -2852,6 +2852,11 @@ x86_emulate( >> else if ( !(d & Mov) ) /* optimisation - avoid slow emulated read */ >> { >> fail_if(lock_prefix ? !ops->cmpxchg : !ops->write); >> + >> + /* cmpxchg{8,16}b handles its own operand read. */ >> + if ( ext == ext_0f && b == 0xc7 ) >> + break; > This part in particular is why I don't like this variant of the fix > (and if at all it would need placing ahead of the fail_if()). > I'm sorry for having talked you into that direction yesterday. Yes - my fix isn't the cleanest. Lets go with yours for the functional fix, but can we keep the locked cmpxchg tests and the ASSERT() from this patch? ~Andrew _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |