The following series implements support within KVM for MSR-based features. The first patch creates the MSR-based feature framework used to retrieve the available MSR-based features. The second patch makes use of the framework to allow a guest to determine if the LFENCE instruction is serializing on AMD processors. This series is based on the master branch of the KVM git tree. https://git.kernel.org/pub/scm/virt/kvm/kvm.git --- Changes from v2: - Moved back to initializing the MSR-based feature list in kvm_init_msr_list() (based on the kvm_x86_ops callback return code) - Removed the definition of KVM_GET_MSR and switched back to using KVM_GET_MSRS - Consolidated the documentation to group the ioctl usage and describe the usage specific to the version of the ioctl used. Tom Lendacky (2): KVM: x86: Add a framework for supporting MSR-based features KVM: SVM: Add MSR-based feature support for serializing LFENCE Documentation/virtual/kvm/api.txt | 29 +++++++++++---- arch/x86/include/asm/kvm_host.h | 2 + arch/x86/kvm/svm.c | 43 ++++++++++++++++++++++ arch/x86/kvm/x86.c | 72 +++++++++++++++++++++++++++++++++++-- include/uapi/linux/kvm.h | 1 + 5 files changed, 136 insertions(+), 11 deletions(-) -- Tom Lendacky