summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnthony Liguori <aliguori@us.ibm.com>2008-01-29 16:46:55 -0600
committerAvi Kivity <avi@qumranet.com>2008-01-30 16:47:01 +0200
commit73209711cedd60256cb1deac5563a14cc066bef2 (patch)
treed95f76a88c1c345f6bca9be5d42a160af053974b /qemu-kvm-ia64.c
parentRemove unoptimal code from qemu dcr handles for powerpc (diff)
downloadqemu-kvm-73209711cedd60256cb1deac5563a14cc066bef2.tar.gz
qemu-kvm-73209711cedd60256cb1deac5563a14cc066bef2.tar.bz2
qemu-kvm-73209711cedd60256cb1deac5563a14cc066bef2.zip
Clean up KVM/QEMU interaction
This patch attempts to clean up the interactions between KVM and QEMU. Sorry for such a big patch, but I don't think there's a better way to approach this such that it's still bisect friendly. I think this is most of what's needed to get basic KVM support into QEMU though. Right now, there's a mix of #ifdef USE_KVM, if (kvm_allowed), and various extern declarations. It's all pretty fugly and there's a lot of mistakes due to it. The following patch eliminates almost all uses of #ifdef USE_KVM by introducing a kvm_enabled() macro. If USE_KVM is set, this macro evaluates to kvm_allowed. If USE_KVM isn't set, the macro evaluates to 0. Since GCC eliminates if (0) blocks, this is just as good as using #ifdef. By making sure that we never call into libkvm directly from QEMU, we can also just not link qemu-kvm when USE_KVM isn't set instead of having the entire file wrapped in a USE_KVM. We also change the --enable-kvm configure option to --disable-kvm since KVM is enabled by default. I've tested this patch on x86 with 32-bit and 64-bit Linux guests and a 32-bit Windows guest. I've also tested with USE_KVM not set. Jerone has also verified that it doesn't PPC. My apologies if it breaks ia64 but I have no way of testing that. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'qemu-kvm-ia64.c')
-rw-r--r--qemu-kvm-ia64.c6
1 files changed, 0 insertions, 6 deletions
diff --git a/qemu-kvm-ia64.c b/qemu-kvm-ia64.c
index 59bc1b769..4d0ddd736 100644
--- a/qemu-kvm-ia64.c
+++ b/qemu-kvm-ia64.c
@@ -2,11 +2,6 @@
#include "config.h"
#include "config-host.h"
-extern int kvm_allowed;
-extern int kvm_irqchip;
-
-#ifdef USE_KVM
-
#include <string.h>
#include "hw/hw.h"
@@ -66,4 +61,3 @@ int kvm_arch_try_push_interrupts(void *opaque)
void kvm_arch_update_regs_for_sipi(CPUState *env)
{
}
-#endif