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

Re: [Xen-devel] [PATCH V3] x86/vm_event: block interrupt injection for sync vm_events



>>> On 14.01.19 at 10:34, <rcojocaru@xxxxxxxxxxxxxxx> wrote:
> On 1/12/19 12:04 AM, Boris Ostrovsky wrote:
>> On 12/14/18 6:49 AM, Razvan Cojocaru wrote:
>>> Block interrupts (in vmx_intr_assist()) for the duration of
>>> processing a sync vm_event (similarly to the strategy
>>> currently used for single-stepping). Otherwise, attempting
>>> to emulate an instruction when requested by a vm_event
>>> reply may legitimately need to call e.g.
>>> hvm_inject_page_fault(), which then overwrites the active
>>> interrupt in the VMCS.
>>>
>>> The sync vm_event handling path on x86/VMX is (roughly):
>>> monitor_traps() -> process vm_event -> vmx_intr_assist()
>>> (possibly writing VM_ENTRY_INTR_INFO) ->
>>> hvm_vm_event_do_resume() -> hvm_emulate_one_vm_event()
>>> (possibly overwriting the VM_ENTRY_INTR_INFO value).
>>>
>>> This patch may also be helpful for the future removal
>>> of may_defer in hvm_set_cr{0,3,4} and hvm_set_msr().
>>>
>>> Signed-off-by: Razvan Cojocaru <rcojocaru@xxxxxxxxxxxxxxx>
>> 
>> 
>> Reviewed-by: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
> 
> Thanks! So now we have three reviewed-bys, if I'm not mistaken all we 
> need is Tamas' (for the vm_event part) and Julien / Stefano's (for ARM) 
> acks (or otherwise).

And you'd need to talk Jürgen into allowing this in, now that we're
past the freeze point.

Jan


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

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