summaryrefslogtreecommitdiffstats
path: root/Documentation/virt/kvm
diff options
context:
space:
mode:
authorXiaoyao Li <xiaoyao.li@intel.com>2020-07-08 08:50:47 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2020-07-08 22:22:00 +0200
commit18964092825aef6faaadf51fbc5fd166168ddf61 (patch)
tree8b0118b1786e00c40ce05a0cb3a48e11d2a984c9 /Documentation/virt/kvm
parentkvm: x86: limit the maximum number of vPMU fixed counters to 3 (diff)
downloadlinux-18964092825aef6faaadf51fbc5fd166168ddf61.tar.xz
linux-18964092825aef6faaadf51fbc5fd166168ddf61.zip
KVM: X86: Reset vcpu->arch.cpuid_nent to 0 if SET_CPUID* fails
Current implementation keeps userspace input of CPUID configuration and cpuid->nent even if kvm_update_cpuid() fails. Reset vcpu->arch.cpuid_nent to 0 for the case of failure as a simple fix. Besides, update the doc to explicitly state that if IOCTL SET_CPUID* fail KVM gives no gurantee that previous valid CPUID configuration is kept. Signed-off-by: Xiaoyao Li <xiaoyao.li@intel.com> Message-Id: <20200708065054.19713-2-xiaoyao.li@intel.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'Documentation/virt/kvm')
-rw-r--r--Documentation/virt/kvm/api.rst4
1 files changed, 4 insertions, 0 deletions
diff --git a/Documentation/virt/kvm/api.rst b/Documentation/virt/kvm/api.rst
index 1cfe79b932d6..644e5326aa50 100644
--- a/Documentation/virt/kvm/api.rst
+++ b/Documentation/virt/kvm/api.rst
@@ -669,6 +669,10 @@ MSRs that have been set successfully.
Defines the vcpu responses to the cpuid instruction. Applications
should use the KVM_SET_CPUID2 ioctl if available.
+Note, when this IOCTL fails, KVM gives no guarantees that previous valid CPUID
+configuration (if there is) is not corrupted. Userspace can get a copy of the
+resulting CPUID configuration through KVM_GET_CPUID2 in case.
+
::
struct kvm_cpuid_entry {