KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x004
authorTom Lendacky <thomas.lendacky@amd.com>
Thu, 10 Dec 2020 17:09:50 +0000 (11:09 -0600)
committerPaolo Bonzini <pbonzini@redhat.com>
Tue, 15 Dec 2020 10:20:48 +0000 (05:20 -0500)
commitd36946679ef6a6fb32b655265602c174feb0ce5e
tree777a076c0a24170d5b65a72c065eef7acb61c012
parent1edc14599e06fdf23dcf7516f73f09091853eb9a
KVM: SVM: Add support for SEV-ES GHCB MSR protocol function 0x004

The GHCB specification defines a GHCB MSR protocol using the lower
12-bits of the GHCB MSR (in the hypervisor this corresponds to the
GHCB GPA field in the VMCB).

Function 0x004 is a request for CPUID information. Only a single CPUID
result register can be sent per invocation, so the protocol defines the
register that is requested. The GHCB MSR value is set to the CPUID
register value as per the specification via the VMCB GHCB GPA field.

Signed-off-by: Tom Lendacky <thomas.lendacky@amd.com>
Message-Id: <fd7ee347d3936e484c06e9001e340bf6387092cd.1607620209.git.thomas.lendacky@amd.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/svm/sev.c
arch/x86/kvm/svm/svm.h