summaryrefslogtreecommitdiffstats
path: root/arch/x86/kvm/vmx.c
diff options
context:
space:
mode:
authorMichael S. Tsirkin2012-06-24 18:25:07 +0200
committerAvi Kivity2012-06-25 11:40:55 +0200
commitae7a2a3fb6f8b784c2752863f4f1f20c656f76fb (patch)
tree5f4053265d244bb12ccff88494d70124b6d603c3 /arch/x86/kvm/vmx.c
parentKVM: rearrange injection cancelling code (diff)
downloadkernel-qcow2-linux-ae7a2a3fb6f8b784c2752863f4f1f20c656f76fb.tar.gz
kernel-qcow2-linux-ae7a2a3fb6f8b784c2752863f4f1f20c656f76fb.tar.xz
kernel-qcow2-linux-ae7a2a3fb6f8b784c2752863f4f1f20c656f76fb.zip
KVM: host side for eoi optimization
Implementation of PV EOI using shared memory. This reduces the number of exits an interrupt causes as much as by half. The idea is simple: there's a bit, per APIC, in guest memory, that tells the guest that it does not need EOI. We set it before injecting an interrupt and clear before injecting a nested one. Guest tests it using a test and clear operation - this is necessary so that host can detect interrupt nesting - and if set, it can skip the EOI MSR. There's a new MSR to set the address of said register in guest memory. Otherwise not much changed: - Guest EOI is not required - Register is tested & ISR is automatically cleared on exit For testing results see description of previous patch 'kvm_para: guest side for eoi avoidance'. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86/kvm/vmx.c')
0 files changed, 0 insertions, 0 deletions