aboutsummaryrefslogtreecommitdiff
path: root/kvm-all.c
diff options
context:
space:
mode:
authorMarcelo Tosatti <mtosatti@redhat.com>2010-05-04 09:45:27 -0300
committerMarcelo Tosatti <mtosatti@redhat.com>2010-05-11 14:02:22 -0300
commit0af691d779965663abdd7bc708c2ad7bce2f6da0 (patch)
treed70d5e1f8b12998b4873fcf83c963862a30e0b4e /kvm-all.c
parentdbaa07c404d05676df8a081e60b6e66344eafc51 (diff)
downloadqemu-0af691d779965663abdd7bc708c2ad7bce2f6da0.zip
qemu-0af691d779965663abdd7bc708c2ad7bce2f6da0.tar.gz
qemu-0af691d779965663abdd7bc708c2ad7bce2f6da0.tar.bz2
kvm: enable smp > 1
Process INIT/SIPI requests and enable -smp > 1. Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com> Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'kvm-all.c')
-rw-r--r--kvm-all.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/kvm-all.c b/kvm-all.c
index e766202..d06980c 100644
--- a/kvm-all.c
+++ b/kvm-all.c
@@ -593,11 +593,6 @@ int kvm_init(int smp_cpus)
int ret;
int i;
- if (smp_cpus > 1) {
- fprintf(stderr, "No SMP KVM support, use '-smp 1'\n");
- return -EINVAL;
- }
-
s = qemu_mallocz(sizeof(KVMState));
#ifdef KVM_CAP_SET_GUEST_DEBUG
@@ -840,6 +835,11 @@ int kvm_cpu_exec(CPUState *env)
}
#endif
+ if (kvm_arch_process_irqchip_events(env)) {
+ ret = 0;
+ break;
+ }
+
if (env->kvm_vcpu_dirty) {
kvm_arch_put_registers(env, KVM_PUT_RUNTIME_STATE);
env->kvm_vcpu_dirty = 0;