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
Acked-by: David Gibson [ppc parts]
Reviewed-by: Mark Cave-Ayland [SPARC part]
Reviewed-by: Cornelia Huck [s390x parts]
---
v8: rebase later in series
v7: no change
v6: defer event additions to later, add reviews of unchanged portions
v5: drop accidental addition of unrelated files
v4: s/ShutdownType/ShutdownCause/, no thanks to mingw header pollution
v3: retitle again, fix qemu-iotests, use enum rather than raw bool
in all callers
v2: retitle (was "event: Add signal information to SHUTDOWN"),
completely rework to post bool based on whether it is guest-initiated
v1: initial submission, exposing just Unix signals from host
---
include/sysemu/sysemu.h | 4 ++--
vl.c| 18 --
hw/acpi/core.c | 4 ++--
hw/arm/highbank.c | 4 ++--
hw/arm/integratorcp.c | 2 +-
hw/arm/musicpal.c | 2 +-
hw/arm/omap1.c | 10 ++
hw/arm/omap2.c | 2 +-
hw/arm/spitz.c | 2 +-
hw/arm/stellaris.c | 2 +-
hw/arm/tosa.c | 2 +-
hw/i386/pc.c| 2 +-
hw/i386/xen/xen-hvm.c | 2 +-
hw/input/pckbd.c| 4 ++--
hw/ipmi/ipmi.c | 4 ++--
hw/isa/lpc_ich9.c | 2 +-
hw/mips/boston.c| 2 +-
hw/mips/mips_malta.c| 2 +-
hw/mips/mips_r4k.c | 4 ++--
hw/misc/arm_sysctl.c| 8
hw/misc/cbus.c | 2 +-
hw/misc/macio/cuda.c| 4 ++--
hw/misc/slavio_misc.c | 4 ++--
hw/misc/zynq_slcr.c | 2 +-
hw/pci-host/apb.c | 4 ++--
hw/pci-host/bonito.c| 2 +-
hw/pci-host/piix.c | 2 +-
hw/ppc/e500.c | 2 +-
hw/ppc/mpc8544_guts.c | 2 +-
hw/ppc/ppc.c| 2 +-
hw/ppc/ppc405_uc.c | 2 +-
hw/ppc/spapr_hcall.c| 2 +-
hw/ppc/spapr_rtas.c | 4 ++--
hw/s390x/ipl.c | 2 +-
hw/sh4/r2d.c| 2 +-
hw/timer/etraxfs_timer.c| 2 +-
hw/timer/m48t59.c | 4 ++--
hw/timer/milkymist-sysctl.c | 4 ++--
hw/timer/pxa2xx_timer.c | 2 +-
hw/watchdog/watchdog.c | 2 +-
hw/xenpv/xen_domainbuild.c | 2 +-
hw/xtensa/xtfpga.c | 2 +-
kvm-all.c | 6 +++---
os-win32.c | 2 +-
qmp.c | 4 ++--
replay/replay.c | 4 ++--
target/alpha/sys_helper.c | 4 ++--
target/arm/psci.c | 4 ++--
target/i386/excp_helper.c | 2 +-
target/i386/hax-all.c | 6 +++---
target/i386/helper.c| 2 +-
target/i386/kvm.c | 2 +-
target/s390x/helper.c | 2 +-
target/s390x/kvm.c | 4 ++--
target/s390x/misc_helper.c | 4 ++--
target/sparc/int32_helper.c | 2 +-
ui/sdl.c| 2 +-
ui/sdl2.c | 4 ++--
trace-events| 2 +-
ui/cocoa.m | 2 +-
60 files changed, 98 insertions(+), 98 deletions(-)
diff --git a/include/sysemu/sysemu.h b/include/sysemu/sysemu.h
index 52102fd..e540e6f 100644
--- a/include/sysemu/sysemu.h
+++ b/include/sysemu/sysemu.h
@@ -62,13 +62,13 @@ typedef enum WakeupReason {
QEMU_WAKEUP_REASON_OTHER,
} WakeupReason;
-void qemu_system_reset_request(void);
+void qemu_system_reset_request(ShutdownCause reason);
void qemu_system_suspend_request(void);
void qemu_register_suspend_notifier(Notifier *notifier);
void qemu_system_wakeup_request(WakeupReason reason);
void qemu_system_wakeup_enable(WakeupReason reason, bool enabled);
void qemu_register_wakeup_notifier(Notifier *notifier);
-void qemu_system_shutdown_request(void);
+void qemu_system_shutdown_request(ShutdownCause reason);
void qemu_system_powerdown_request(void);
void qemu_register_powerdown_notifier(Notifier *notifier);
void qemu_system_debug_request(void);
diff --git a/vl.c b/vl.c
index 51ed60f..bc5c1be 100644
--- a/vl.c
+++ b/vl.c
@@ -1724,7 +1724,7 @@ void qemu_system_guest_panicked(GuestPanicInformation
*info)
if (!no_shutdown) {
qapi_event_send_guest_panicked(GUEST_PANIC_ACTION_POWEROFF,
!!info, info, _abort);
-qemu_system_shutdown_request();
+