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.