aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/kvm/vmx.h
diff options
context:
space:
mode:
authorSheng Yang <sheng.yang@intel.com>2007-10-28 21:40:42 -0400
committerAvi Kivity <avi@qumranet.com>2008-01-30 10:52:58 -0500
commitf78e0e2ee498e8f847500b565792c7d7634dcf54 (patch)
treedfd8f35883b40939a1ec013e27e6303af06d3e77 /drivers/kvm/vmx.h
parenta03490ed29d2771c675d4d9c0ffe22e19a1757f3 (diff)
KVM: VMX: Enable memory mapped TPR shadow (FlexPriority)
This patch based on CR8/TPR patch, and enable the TPR shadow (FlexPriority) for 32bit Windows. Since TPR is accessed very frequently by 32bit Windows, especially SMP guest, with FlexPriority enabled, we saw significant performance gain. Signed-off-by: Sheng Yang <sheng.yang@intel.com> Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'drivers/kvm/vmx.h')
-rw-r--r--drivers/kvm/vmx.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/kvm/vmx.h b/drivers/kvm/vmx.h
index 270d477a2aa6..c84bd3733153 100644
--- a/drivers/kvm/vmx.h
+++ b/drivers/kvm/vmx.h
@@ -89,6 +89,8 @@ enum vmcs_field {
89 TSC_OFFSET_HIGH = 0x00002011, 89 TSC_OFFSET_HIGH = 0x00002011,
90 VIRTUAL_APIC_PAGE_ADDR = 0x00002012, 90 VIRTUAL_APIC_PAGE_ADDR = 0x00002012,
91 VIRTUAL_APIC_PAGE_ADDR_HIGH = 0x00002013, 91 VIRTUAL_APIC_PAGE_ADDR_HIGH = 0x00002013,
92 APIC_ACCESS_ADDR = 0x00002014,
93 APIC_ACCESS_ADDR_HIGH = 0x00002015,
92 VMCS_LINK_POINTER = 0x00002800, 94 VMCS_LINK_POINTER = 0x00002800,
93 VMCS_LINK_POINTER_HIGH = 0x00002801, 95 VMCS_LINK_POINTER_HIGH = 0x00002801,
94 GUEST_IA32_DEBUGCTL = 0x00002802, 96 GUEST_IA32_DEBUGCTL = 0x00002802,
@@ -214,6 +216,7 @@ enum vmcs_field {
214#define EXIT_REASON_MSR_WRITE 32 216#define EXIT_REASON_MSR_WRITE 32
215#define EXIT_REASON_MWAIT_INSTRUCTION 36 217#define EXIT_REASON_MWAIT_INSTRUCTION 36
216#define EXIT_REASON_TPR_BELOW_THRESHOLD 43 218#define EXIT_REASON_TPR_BELOW_THRESHOLD 43
219#define EXIT_REASON_APIC_ACCESS 44
217 220
218/* 221/*
219 * Interruption-information format 222 * Interruption-information format
@@ -307,4 +310,6 @@ enum vmcs_field {
307#define MSR_IA32_FEATURE_CONTROL_LOCKED 0x1 310#define MSR_IA32_FEATURE_CONTROL_LOCKED 0x1
308#define MSR_IA32_FEATURE_CONTROL_VMXON_ENABLED 0x4 311#define MSR_IA32_FEATURE_CONTROL_VMXON_ENABLED 0x4
309 312
313#define APIC_ACCESS_PAGE_PRIVATE_MEMSLOT 9
314
310#endif 315#endif