[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Xen-devel] [PATCH V2] x86/emulate: synchronize LOCKed instruction emulation
On 03/23/2017 06:20 PM, Jan Beulich wrote:
>>>> On 23.03.17 at 16:54, <rcojocaru@xxxxxxxxxxxxxxx> wrote:
>> I'm not sure where to go from here.
>
> Well, without finding where things start to go wrong, I don't think
> we can make any progress here. Finding that may admittedly be
> a rather tedious process.
I may have stumbled across a clue: hvm_emulate_one_vm_event() currently
does nothing when hvm_emulate_one() returns RETRY. This was fine before,
but if the cmpxchg hook can propagate RETRY upwards, a failed emulation
attempt causes the guest to retry the instruction, generate another
page-fault, and so on.
I've now wrapped the body of hvm_emulate_one_vm_event() in a do { /* ...
*/ } while ( rc == X86EMUL_RETRY ); and my guest seems to be booting. At
this point I'm not sure if this is the best solution (should I just
retry indefinitely until it succeeds?) or if this is just luck, but it
at least feels like a step in the right direction.
Thanks,
Razvan
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel
|