Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1675711

Re: [PATCH v4 3/4] KVM: async_pf: Force a nested vmexit if the injected #PF is async_pf

From Paolo Bonzini <pbonzini@redhat.com>
Newsgroups linux.kernel
Subject Re: [PATCH v4 3/4] KVM: async_pf: Force a nested vmexit if the injected #PF is async_pf
Date 2017-06-27 15:50 +0200
Message-ID <tWZ2q-1ch-5@gated-at.bofh.it> (permalink)
References <tUZJf-6uJ-3@gated-at.bofh.it> <tUZJf-6uJ-15@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw



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

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v4 0/4] KVM: async_pf: Fix async_pf exception injection Wanpeng Li <kernellwp@gmail.com> - 2017-06-22 04:10 +0200
  [PATCH v4 3/4] KVM: async_pf: Force a nested vmexit if the injected #PF is async_pf Wanpeng Li <kernellwp@gmail.com> - 2017-06-22 04:10 +0200
    Re: [PATCH v4 3/4] KVM: async_pf: Force a nested vmexit if the  injected #PF is async_pf Paolo Bonzini <pbonzini@redhat.com> - 2017-06-27 15:50 +0200
      Re: [PATCH v4 3/4] KVM: async_pf: Force a nested vmexit if the  injected #PF is async_pf Wanpeng Li <kernellwp@gmail.com> - 2017-06-28 00:40 +0200
        Re: [PATCH v4 3/4] KVM: async_pf: Force a nested vmexit if the  injected #PF is async_pf Paolo Bonzini <pbonzini@redhat.com> - 2017-06-28 13:50 +0200

csiph-web