On Thu, Jun 13, 2019 at 07:02:58PM +0200, Paolo Bonzini wrote: > diff --git a/arch/x86/kvm/vmx/nested.c b/arch/x86/kvm/vmx/nested.c > index fc2b8f4cf45f..a6fe6cfe96f6 100644 > --- a/arch/x86/kvm/vmx/nested.c > +++ b/arch/x86/kvm/vmx/nested.c > @@ -4503,41 +4526,27 @@ static int handle_vmwrite(struct kvm_vcpu *vcpu) > vmcs12_write_any(vmcs12, field, offset, field_value); > > /* > - * Do not track vmcs12 dirty-state if in guest-mode > - * as we actually dirty shadow vmcs12 instead of vmcs12. > + * Do not track vmcs12 dirty-state if in guest-mode as we actually > + * dirty shadow vmcs12 instead of vmcs12. Fields that can be updated > + * by L1 without a vmexit are always updated in the vmcs02, i.e' don't Minor typo (from my original patch), should be "i.e.", not "i.e'". > + * "dirty" vmcs12, all others go down the prepare_vmcs02() slow path. > */ > - if (!is_guest_mode(vcpu)) { > - switch (field) {