[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20171218171742.5765-1-vkuznets@redhat.com>
Date: Mon, 18 Dec 2017 18:17:35 +0100
From: Vitaly Kuznetsov <vkuznets@...hat.com>
To: kvm@...r.kernel.org
Cc: x86@...nel.org, Paolo Bonzini <pbonzini@...hat.com>,
Radim Krčmář <rkrcmar@...hat.com>,
"K. Y. Srinivasan" <kys@...rosoft.com>,
Haiyang Zhang <haiyangz@...rosoft.com>,
Stephen Hemminger <sthemmin@...rosoft.com>,
"Michael Kelley (EOSG)" <Michael.H.Kelley@...rosoft.com>,
Mohammed Gamal <mmorsy@...hat.com>,
Cathy Avery <cavery@...hat.com>, Bandan Das <bsd@...hat.com>,
Roman Kagan <rkagan@...tuozzo.com>,
linux-kernel@...r.kernel.org, devel@...uxdriverproject.org
Subject: [PATCH RFC 0/7] KVM: nVMX: enlightened VMCS initial implementation
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
Powered by blists - more mailing lists