[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180702141653.88936-1-Tianyu.Lan@microsoft.com>
Date: Mon, 2 Jul 2018 14:17:13 +0000
From: Tianyu Lan <Tianyu.Lan@...rosoft.com>
To: unlisted-recipients:; (no To-header on input)
CC: Tianyu Lan <Tianyu.Lan@...rosoft.com>,
"devel@...uxdriverproject.org" <devel@...uxdriverproject.org>,
Haiyang Zhang <haiyangz@...rosoft.com>,
"hpa@...or.com" <hpa@...or.com>,
"kvm@...r.kernel.org" <kvm@...r.kernel.org>,
KY Srinivasan <kys@...rosoft.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"mingo@...hat.com" <mingo@...hat.com>,
"pbonzini@...hat.com" <pbonzini@...hat.com>,
"rkrcmar@...hat.com" <rkrcmar@...hat.com>,
Stephen Hemminger <sthemmin@...rosoft.com>,
"tglx@...utronix.de" <tglx@...utronix.de>,
"x86@...nel.org" <x86@...nel.org>,
"vkuznets@...hat.com" <vkuznets@...hat.com>,
"Michael Kelley (EOSG)" <Michael.H.Kelley@...rosoft.com>
Subject: [PATCH 0/4] KVM/x86/hyper-V: Introduce PV guest address space mapping
flush support
Hyper-V provides a para-virtualization hypercall HvFlushGuestPhysicalAddressSpace
to flush nested VM address space mapping in l1 hypervisor and it's to reduce overhead
of flushing ept tlb among vcpus. The tradition way is to send IPIs to all affected
vcpus and executes INVEPT on each vcpus. It will trigger several vmexits for IPI and
INVEPT emulation. The pv hypercall can help to flush specified ept table on all vcpus
via one single hypercall.
Lan Tianyu (4):
X86/Hyper-V: Add flush HvFlushGuestPhysicalAddressSpace hypercall
support
KVM: Add tlb remote flush callback in kvm_x86_ops.
KVM/VMX: Add identical ept table pointer check
KVM/x86: Add tlb_remote_flush callback support for vmcs
arch/x86/hyperv/Makefile | 2 +-
arch/x86/hyperv/nested.c | 64 ++++++++++++++++++++++++++++++++++++++
arch/x86/include/asm/hyperv-tlfs.h | 8 +++++
arch/x86/include/asm/kvm_host.h | 1 +
arch/x86/include/asm/mshyperv.h | 2 ++
arch/x86/kvm/vmx.c | 56 +++++++++++++++++++++++++++++++++
virt/kvm/kvm_main.c | 12 ++++++-
7 files changed, 143 insertions(+), 2 deletions(-)
create mode 100644 arch/x86/hyperv/nested.c
--
2.14.3
Powered by blists - more mailing lists