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

Re: [Xen-devel] [PATCH v5 1/4] x86/HVM: cancel emulation when register state got altered

> -----Original Message-----
> From: Xen-devel <xen-devel-bounces@xxxxxxxxxxxxxxxxxxxx> On Behalf Of Jan
> Beulich
> Sent: 03 March 2020 10:17
> To: xen-devel@xxxxxxxxxxxxxxxxxxxx
> Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>; Roger Pau Monné
> <roger.pau@xxxxxxxxxx>; Wei Liu <wl@xxxxxxx>; Paul Durrant <paul@xxxxxxx>
> Subject: [EXTERNAL][Xen-devel] [PATCH v5 1/4] x86/HVM: cancel emulation
> when register state got altered
> Re-execution (after having received data from a device model) relies on
> the same register state still being in place as it was when the request
> was first sent to the device model. Therefore vCPU state changes
> effected by remote sources need to result in no attempt of re-execution.
> Instead the returned data is to simply be ignored.
> Note that any such asynchronous state changes happen with the vCPU at
> least paused (potentially down and/or not marked ->is_initialised), so
> there's no issue with fiddling with register state behind the actively
> running emulator's back. Hence the new function doesn't need to
> synchronize with the core emulation logic.
> Suggested-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>

Need we be concerned with any page-split I/O here? That may manifest as two 
separate emulations and AFAICT it would be possible for only the second part to 
be aborted by this change.

Xen-devel mailing list



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