]> git.baikalelectronics.ru Git - kernel.git/commit
KVM: VMX: Implement PCID/INVPCID for guests with EPT
authorMao, Junjie <junjie.mao@intel.com>
Mon, 2 Jul 2012 01:18:48 +0000 (01:18 +0000)
committerAvi Kivity <avi@redhat.com>
Thu, 12 Jul 2012 10:07:34 +0000 (13:07 +0300)
commit14df5e7810db8c611cdcc94eb0bedf9305eff823
tree0b01513f1e3434362ab9faf8394cbd158b31386d
parentbce3e0a1baa5e35b167e92b2fe8eaac88486575e
KVM: VMX: Implement PCID/INVPCID for guests with EPT

This patch handles PCID/INVPCID for guests.

Process-context identifiers (PCIDs) are a facility by which a logical processor
may cache information for multiple linear-address spaces so that the processor
may retain cached information when software switches to a different linear
address space. Refer to section 4.10.1 in IA32 Intel Software Developer's Manual
Volume 3A for details.

For guests with EPT, the PCID feature is enabled and INVPCID behaves as running
natively.
For guests without EPT, the PCID feature is disabled and INVPCID triggers #UD.

Signed-off-by: Junjie Mao <junjie.mao@intel.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
arch/x86/include/asm/kvm_host.h
arch/x86/include/asm/processor-flags.h
arch/x86/include/asm/vmx.h
arch/x86/kvm/cpuid.c
arch/x86/kvm/cpuid.h
arch/x86/kvm/svm.c
arch/x86/kvm/vmx.c
arch/x86/kvm/x86.c