aboutsummaryrefslogtreecommitdiff
path: root/target-s390x
diff options
context:
space:
mode:
authorAndreas Färber <afaerber@suse.de>2012-05-03 04:32:00 +0200
committerAndreas Färber <afaerber@suse.de>2012-06-11 00:23:05 +0200
commit3edb8f92e8b5f18797693d8ed9fad3962e11e25d (patch)
tree5ce6aa0d162bf7f251aa471e70135fb23f1185f4 /target-s390x
parent45fa769b32861573409bceff53251cffafcf10a9 (diff)
downloadqemu-3edb8f92e8b5f18797693d8ed9fad3962e11e25d.zip
qemu-3edb8f92e8b5f18797693d8ed9fad3962e11e25d.tar.gz
qemu-3edb8f92e8b5f18797693d8ed9fad3962e11e25d.tar.bz2
target-s390x: Pass S390CPU to s390_cpu_restart()
Needed for qemu_cpu_kick(). Signed-off-by: Andreas Färber <afaerber@suse.de>
Diffstat (limited to 'target-s390x')
-rw-r--r--target-s390x/kvm.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/target-s390x/kvm.c b/target-s390x/kvm.c
index 2153e38..5800fd6 100644
--- a/target-s390x/kvm.c
+++ b/target-s390x/kvm.c
@@ -292,8 +292,10 @@ static int handle_diag(CPUS390XState *env, struct kvm_run *run, int ipb_code)
return r;
}
-static int s390_cpu_restart(CPUS390XState *env)
+static int s390_cpu_restart(S390CPU *cpu)
{
+ CPUS390XState *env = &cpu->env;
+
kvm_s390_interrupt(env, KVM_S390_RESTART, 0);
s390_add_running_cpu(env);
qemu_cpu_kick(env);
@@ -362,7 +364,7 @@ static int handle_sigp(CPUS390XState *env, struct kvm_run *run, uint8_t ipa1)
switch (order_code) {
case SIGP_RESTART:
- r = s390_cpu_restart(target_env);
+ r = s390_cpu_restart(target_cpu);
break;
case SIGP_STORE_STATUS_ADDR:
r = s390_store_status(target_env, parameter);