The original author of these patches does no longer work at Red Hat, I agreed to take this over and send upstream. Here is his original description: "Makes KVM implement the enlightened VMCS feature per Hyper-V TLFS 5.0b. I've measured about %5 improvement in cost of a nested VM exit (Hyper-V enabled Windows Server 2016 nested in KVM)." This is just an initial implementation. By leveraging clean fields mask we can further improve performance. I'm also interested in implementing the other part of the feature: consuming enlightened VMCS when KVM is running on top of Hyper-V. Ladi Prosek (7): KVM: x86: rename HV_X64_MSR_APIC_ASSIST_PAGE to HV_X64_MSR_VP_ASSIST_PAGE KVM: nVMX: modify vmcs12 fields to match Hyper-V enlightened VMCS KVM: nVMX: add I/O exit ECX, ESI, EDI, EIP vmcs12 fields KVM: hyperv: define VP assist page structure and add helpers KVM: nVMX: add KVM_CAP_HYPERV_ENLIGHTENED_VMCS capability KVM: nVMX: add enlightened VMCS state KVM: nVMX: implement enlightened VMPTRLD arch/x86/include/asm/kvm_host.h | 3 + arch/x86/include/asm/vmx.h | 4 + arch/x86/include/uapi/asm/hyperv.h | 20 +- arch/x86/kvm/hyperv.c | 31 ++- arch/x86/kvm/hyperv.h | 4 + arch/x86/kvm/lapic.c | 4 +- arch/x86/kvm/lapic.h | 4 +- arch/x86/kvm/svm.c | 9 + arch/x86/kvm/vmx.c | 467 ++++++++++++++++++++++++++----------- arch/x86/kvm/x86.c | 19 +- include/uapi/linux/kvm.h | 1 + 11 files changed, 407 insertions(+), 159 deletions(-) -- 2.14.3 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel