KVM: SEV-ES: Set guest_state_protected after VMSA update
authorPeter Gonda <pgonda@google.com>
Fri, 15 Oct 2021 17:32:22 +0000 (13:32 -0400)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 18 Oct 2021 18:07:17 +0000 (14:07 -0400)
The refactoring in commit bb18a6777465 ("KVM: SEV: Acquire
vcpu mutex when updating VMSA") left behind the assignment to
svm->vcpu.arch.guest_state_protected; add it back.

Signed-off-by: Peter Gonda <pgonda@google.com>
[Delta between v2 and v3 of Peter's patch, which had already been
 committed; the commit message is my own. - Paolo]
Fixes: bb18a6777465 ("KVM: SEV: Acquire vcpu mutex when updating VMSA")
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/svm/sev.c

index e672493..0d21d59 100644 (file)
@@ -618,7 +618,12 @@ static int __sev_launch_update_vmsa(struct kvm *kvm, struct kvm_vcpu *vcpu,
        vmsa.handle = to_kvm_svm(kvm)->sev_info.handle;
        vmsa.address = __sme_pa(svm->vmsa);
        vmsa.len = PAGE_SIZE;
-       return sev_issue_cmd(kvm, SEV_CMD_LAUNCH_UPDATE_VMSA, &vmsa, error);
+       ret = sev_issue_cmd(kvm, SEV_CMD_LAUNCH_UPDATE_VMSA, &vmsa, error);
+       if (ret)
+         return ret;
+
+       vcpu->arch.guest_state_protected = true;
+       return 0;
 }
 
 static int sev_launch_update_vmsa(struct kvm *kvm, struct kvm_sev_cmd *argp)