KVM: Emulate local APIC in kernel
authorEddie Dong <eddie.dong@intel.com>
Wed, 12 Sep 2007 07:58:04 +0000 (10:58 +0300)
committerAvi Kivity <avi@qumranet.com>
Sat, 13 Oct 2007 08:18:25 +0000 (10:18 +0200)
commit97222cc8316328965851ed28d23f6b64b4c912d2
tree469b2f72e74046a7aec5061df194c3f68812a224
parent7017fc3d1a12e30ea7df4992152978a188433457
KVM: Emulate local APIC in kernel

Because lightweight exits (exits which don't involve userspace) are many
times faster than heavyweight exits, it makes sense to emulate high usage
devices in the kernel.  The local APIC is one such device, especially for
Windows and for SMP, so we add an APIC model to kvm.

It also allows in-kernel host-side drivers to inject interrupts without
going through userspace.

[compile fix on i386 from Jindrich Makovicka]

Signed-off-by: Yaozu (Eddie) Dong <Eddie.Dong@intel.com>
Signed-off-by: Qing He <qing.he@intel.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
drivers/kvm/Makefile
drivers/kvm/irq.c
drivers/kvm/irq.h
drivers/kvm/kvm.h
drivers/kvm/kvm_main.c
drivers/kvm/lapic.c [new file with mode: 0644]
drivers/kvm/svm.c
drivers/kvm/vmx.c
include/linux/kvm.h