Messages in this thread | | | Subject | Re: [PATCH v4 3/4] KVM: async_pf: Force a nested vmexit if the injected #PF is async_pf | From | Paolo Bonzini <> | Date | Tue, 27 Jun 2017 15:40:24 +0200 |
| |
On 22/06/2017 04:06, Wanpeng Li wrote: > From: Wanpeng Li <wanpeng.li@hotmail.com> > > Add an async_page_fault field to vcpu->arch.exception to identify an async > page fault, and constructs the expected vm-exit information fields. Force > a nested VM exit from nested_vmx_check_exception() if the injected #PF > is async page fault. Extending the userspace interface KVM_GET_VCPU_EVENTS > and KVM_SET_VCPU_EVENTS for live migration.
I am not sure what would happen if new kernel (that can produce async_page_fault=1) runs on top of old userspace (that can consume it).
I think it would be safer to make the new field "nested_apf", and only set it if in guest_mode, like
vcpu->arch.exception.nested_apf = is_guest_mode(vcpu) && fault->async_page_fault; if (vcpu->arch.exception.nested_apf) vcpu->arch.apf.nested_apf_token = fault->address; else vcpu->arch.cr2 = fault->address;
What do you think?
Paolo
| |