aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/include/asm/kvm_host.h
diff options
context:
space:
mode:
authorAvi Kivity <avi@redhat.com>2011-04-27 19:42:18 +0300
committerAvi Kivity <avi@redhat.com>2011-05-22 08:47:45 -0400
commit2fb92db1ec08f3235c500e7f460eeb78092d844e (patch)
tree9cc23153b938a29969baa86e8075c507a7a05570 /arch/x86/include/asm/kvm_host.h
parent1aa366163b8b69f660cf94fd5062fa44859e4318 (diff)
downloadkernel_samsung_smdk4412-2fb92db1ec08f3235c500e7f460eeb78092d844e.zip
kernel_samsung_smdk4412-2fb92db1ec08f3235c500e7f460eeb78092d844e.tar.gz
kernel_samsung_smdk4412-2fb92db1ec08f3235c500e7f460eeb78092d844e.tar.bz2
KVM: VMX: Cache vmcs segment fields
Since the emulator now checks segment limits and access rights, it generates a lot more accesses to the vmcs segment fields. Undo some of the performance hit by cacheing those fields in a read-only cache (the entire cache is invalidated on any write, or on guest exit). Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86/include/asm/kvm_host.h')
-rw-r--r--arch/x86/include/asm/kvm_host.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/include/asm/kvm_host.h b/arch/x86/include/asm/kvm_host.h
index afb0e69..d2ac8e2 100644
--- a/arch/x86/include/asm/kvm_host.h
+++ b/arch/x86/include/asm/kvm_host.h
@@ -136,6 +136,7 @@ enum kvm_reg_ex {
VCPU_EXREG_CR3,
VCPU_EXREG_RFLAGS,
VCPU_EXREG_CPL,
+ VCPU_EXREG_SEGMENTS,
};
enum {