[PATCH RFC 0/7] KVM: nVMX: enlightened VMCS initial implementation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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



[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux