diff options
author | Eric Blake <eblake@redhat.com> | 2017-05-15 16:41:13 -0500 |
---|---|---|
committer | Markus Armbruster <armbru@redhat.com> | 2017-05-23 13:28:17 +0200 |
commit | cf83f140059f21d4629ae4b61d468c3baef2bb4c (patch) | |
tree | 4c39ace51dc5ca17a6a3edf9800844b08b55ab1f /target/s390x/kvm.c | |
parent | 802f045a5f61b781df55e4492d896b4d20503ba7 (diff) | |
download | qemu-cf83f140059f21d4629ae4b61d468c3baef2bb4c.zip qemu-cf83f140059f21d4629ae4b61d468c3baef2bb4c.tar.gz qemu-cf83f140059f21d4629ae4b61d468c3baef2bb4c.tar.bz2 |
shutdown: Add source information to SHUTDOWN and RESET
Time to wire up all the call sites that request a shutdown or
reset to use the enum added in the previous patch.
It would have been less churn to keep the common case with no
arguments as meaning guest-triggered, and only modified the
host-triggered code paths, via a wrapper function, but then we'd
still have to audit that I didn't miss any host-triggered spots;
changing the signature forces us to double-check that I correctly
categorized all callers.
Since command line options can change whether a guest reset request
causes an actual reset vs. a shutdown, it's easy to also add the
information to reset requests.
Signed-off-by: Eric Blake <eblake@redhat.com>
Acked-by: David Gibson <david@gibson.dropbear.id.au> [ppc parts]
Reviewed-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk> [SPARC part]
Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com> [s390x parts]
Message-Id: <20170515214114.15442-5-eblake@redhat.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Diffstat (limited to 'target/s390x/kvm.c')
-rw-r--r-- | target/s390x/kvm.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/target/s390x/kvm.c b/target/s390x/kvm.c index fb10542..ba1e60f 100644 --- a/target/s390x/kvm.c +++ b/target/s390x/kvm.c @@ -1927,7 +1927,7 @@ static int handle_intercept(S390CPU *cpu) cpu_synchronize_state(cs); if (s390_cpu_halt(cpu) == 0) { if (is_special_wait_psw(cs)) { - qemu_system_shutdown_request(); + qemu_system_shutdown_request(SHUTDOWN_CAUSE_GUEST_SHUTDOWN); } else { qemu_system_guest_panicked(NULL); } @@ -1936,7 +1936,7 @@ static int handle_intercept(S390CPU *cpu) break; case ICPT_CPU_STOP: if (s390_cpu_set_state(CPU_STATE_STOPPED, cpu) == 0) { - qemu_system_shutdown_request(); + qemu_system_shutdown_request(SHUTDOWN_CAUSE_GUEST_SHUTDOWN); } if (cpu->env.sigp_order == SIGP_STOP_STORE_STATUS) { kvm_s390_store_status(cpu, KVM_S390_STORE_STATUS_DEF_ADDR, |