summaryrefslogtreecommitdiff
path: root/target-s390x
diff options
context:
space:
mode:
authorChristian Borntraeger <borntraeger@de.ibm.com>2011-05-05 09:29:57 +0200
committerAlexander Graf <agraf@suse.de>2011-05-20 17:35:12 +0200
commit71b12d31971751f46c546d693c1e216f38ba2053 (patch)
treeb619840675cca22b4a44494c6c970faa262e8ec8 /target-s390x
parent1fddfba129f5435c80eda14e8bc23fdb888c7187 (diff)
s390x: fix smp support for kvm
Currently smp support for kvm does not work. Qemu does a kvm run even on secondary CPUs which dont have a sane state (initial psw == 0) triggering some program faults. Architecturally these cpus are in the stopped state, so we should not do the kvm run ioctl. (these CPUs will be started by a SIGP restart later during the boot process) We need to tell the loop that this cpu should not run. Jan Kiszka pointed out that kvm_arch_process_async_events is the right place to do. Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'target-s390x')
-rw-r--r--target-s390x/kvm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c
index 2643460722..315569313c 100644
--- a/target-s390x/kvm.c
+++ b/target-s390x/kvm.c
@@ -179,7 +179,7 @@ void kvm_arch_post_run(CPUState *env, struct kvm_run *run)
int kvm_arch_process_async_events(CPUState *env)
{
- return 0;
+ return env->halted;
}
void kvm_s390_interrupt_internal(CPUState *env, int type, uint32_t parm,