Re: [PATCH 1/2] kvm: nVMX: don't flush VMCS12 during VMXOFF or VCPU teardown

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

 



2017-08-02 10:18+0200, Paolo Bonzini:
> On 01/08/2017 23:00, David Matlack wrote:
> > According to the Intel SDM, software cannot rely on the current VMCS to be
> > coherent after a VMXOFF or shutdown. So this is a valid way to handle VMCS12
> > flushes.
> > 
> > 24.11.1 Software Use of Virtual-Machine Control Structures
> > ...
> >   If a logical processor leaves VMX operation, any VMCSs active on
> >   that logical processor may be corrupted (see below). To prevent
> >   such corruption of a VMCS that may be used either after a return
> >   to VMX operation or on another logical processor, software should
> >   execute VMCLEAR for that VMCS before executing the VMXOFF instruction
> >   or removing power from the processor (e.g., as part of a transition
> >   to the S3 and S4 power states).
> > ...
> > 
> > This fixes a "suspicious rcu_dereference_check() usage!" warning during
> > kvm_vm_release() because nested_release_vmcs12() calls
> > kvm_vcpu_write_guest_page() without holding kvm->srcu.
> > 
> > Signed-off-by: David Matlack <dmatlack@xxxxxxxxxx>
> > ---
> > This patch applies on top of Paolo's "[PATCH] KVM: nVMX: do not pin the VMCS12".
> > (http://www.mail-archive.com/linux-kernel@xxxxxxxxxxxxxxx/msg1455166.html)
> 
> Thanks, I think Radim should first apply the RCU-on-teardown patch
> (which I'll resend formally today), then "do not pin the VMCS12", then
> these two.
> 
> Reviewed-by: Paolo Bonzini <pbonzini@xxxxxxxxxx>

Applied in that order, thanks.



[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux