KVM: x86: nSVM: don't copy pause related settings
authorMaxim Levitsky <mlevitsk@redhat.com>
Tue, 14 Sep 2021 15:48:15 +0000 (18:48 +0300)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 30 Sep 2021 08:27:11 +0000 (04:27 -0400)
According to the SDM, the CPU never modifies these settings.
It loads them on VM entry and updates an internal copy instead.

Also don't load them from the vmcb12 as we don't expose these
features to the nested guest yet.

Signed-off-by: Maxim Levitsky <mlevitsk@redhat.com>
Message-Id: <20210914154825.104886-5-mlevitsk@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/svm/nested.c

index 510b833..ec3e926 100644 (file)
@@ -550,9 +550,6 @@ static void nested_vmcb02_prepare_control(struct vcpu_svm *svm)
        svm->vmcb->control.event_inj           = svm->nested.ctl.event_inj;
        svm->vmcb->control.event_inj_err       = svm->nested.ctl.event_inj_err;
 
-       svm->vmcb->control.pause_filter_count  = svm->nested.ctl.pause_filter_count;
-       svm->vmcb->control.pause_filter_thresh = svm->nested.ctl.pause_filter_thresh;
-
        nested_svm_transition_tlb_flush(vcpu);
 
        /* Enter Guest-Mode */
@@ -810,11 +807,6 @@ int nested_svm_vmexit(struct vcpu_svm *svm)
        vmcb12->control.event_inj         = svm->nested.ctl.event_inj;
        vmcb12->control.event_inj_err     = svm->nested.ctl.event_inj_err;
 
-       vmcb12->control.pause_filter_count =
-               svm->vmcb->control.pause_filter_count;
-       vmcb12->control.pause_filter_thresh =
-               svm->vmcb->control.pause_filter_thresh;
-
        nested_svm_copy_common_state(svm->nested.vmcb02.ptr, svm->vmcb01.ptr);
 
        svm_switch_vmcb(svm, &svm->vmcb01);