aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kvm/Kconfig
diff options
context:
space:
mode:
authorAvi Kivity <avi@redhat.com>2009-09-07 04:12:18 -0400
committerAvi Kivity <avi@redhat.com>2009-12-03 02:32:21 -0500
commit18863bdd60f895f3b3ba16b15e8331aee781e8ec (patch)
tree2d0e456a8d2dc12def13f2fed386ca9e5a440823 /arch/x86/kvm/Kconfig
parent44ea2b1758d88ad822e65b1c4c21ca6164494e27 (diff)
KVM: x86 shared msr infrastructure
The various syscall-related MSRs are fairly expensive to switch. Currently we switch them on every vcpu preemption, which is far too often: - if we're switching to a kernel thread (idle task, threaded interrupt, kernel-mode virtio server (vhost-net), for example) and back, then there's no need to switch those MSRs since kernel threasd won't be exiting to userspace. - if we're switching to another guest running an identical OS, most likely those MSRs will have the same value, so there's little point in reloading them. - if we're running the same OS on the guest and host, the MSRs will have identical values and reloading is unnecessary. This patch uses the new user return notifiers to implement last-minute switching, and checks the msr values to avoid unnecessary reloading. Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86/kvm/Kconfig')
-rw-r--r--arch/x86/kvm/Kconfig1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/x86/kvm/Kconfig b/arch/x86/kvm/Kconfig
index b84e571f4175..4cd498332466 100644
--- a/arch/x86/kvm/Kconfig
+++ b/arch/x86/kvm/Kconfig
@@ -28,6 +28,7 @@ config KVM
28 select HAVE_KVM_IRQCHIP 28 select HAVE_KVM_IRQCHIP
29 select HAVE_KVM_EVENTFD 29 select HAVE_KVM_EVENTFD
30 select KVM_APIC_ARCHITECTURE 30 select KVM_APIC_ARCHITECTURE
31 select USER_RETURN_NOTIFIER
31 ---help--- 32 ---help---
32 Support hosting fully virtualized guest machines using hardware 33 Support hosting fully virtualized guest machines using hardware
33 virtualization extensions. You will need a fairly recent 34 virtualization extensions. You will need a fairly recent