mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-07 01:33:56 -06:00
QAPI patches for 2017-05-23
-----BEGIN PGP SIGNATURE----- iQIcBAABAgAGBQJZJB4MAAoJEDhwtADrkYZTjhkP+wRaiZj9h4IJvcWoNEzfyuA1 kd7+Kx6QgfCmZE9vL2/mlOFddWL0fPtPffL/ZRu5UNgIILaCSPFsGkOGvXLZhaUW he5sqLCqMc2mxgB98HpbT0dzt0cOSCjdM5BxkFXeq/yPoDa0IiZiD8cpvj+FVwKi D0qGdrKKGCR3RteL4gr/kaXY/LXAZfuEjbAtylQx1aMHJ6CKmdSIVVVU2JJVIYhQ +dT/Xst0PSkJYk90wgmwpzPCqKR/N5zHFe8CyUoE67FxBhegdw19O3wlzU9DJ3N5 8Az+fbEjifWoMytTZR4H3snPJGwl6wxsh2UVj9SMCvebc0y278UPlGqiszvWBepa 1iZHHULH+yygHyUmX6CxjHOUW498ES2KGHx7qJJe8ebeJ4XuU7JcE+Sf4GQEAm8Q p6P5s3qXpuVjekCjmerUAtybr+hxEQC9fbAGqPq+r489jwjvUiETrMLbmEHyy/Xa fSUaW+f5kGI0GJS9FYcbcMy9w2130lTK2k4bZM0mSVlSsHA7W0GBDnzxUDtxo6uH oqMQgKIFWOBU5GkRUiL43vpiTIpiLCuG6PbQlgefQRPWdoODVxykuu2bq5hVaax8 8XMkkq7isG/J5esFc55L1qEUyrUDtVYx/LiHj0XXJikkGirXtp7b7l/TmFLZGsex UWWzFRbZnCVf2CKwdV6h =DNqn -----END PGP SIGNATURE----- Merge remote-tracking branch 'armbru/tags/pull-qapi-2017-05-23' into staging QAPI patches for 2017-05-23 # gpg: Signature made Tue 23 May 2017 12:33:32 PM BST # gpg: using RSA key 0x3870B400EB918653 # gpg: Good signature from "Markus Armbruster <armbru@redhat.com>" # gpg: aka "Markus Armbruster <armbru@pond.sub.org>" # Primary key fingerprint: 354B C8B3 D7EB 2A6B 6867 4E5F 3870 B400 EB91 8653 * armbru/tags/pull-qapi-2017-05-23: qapi-schema: Remove obsolete note from ObjectTypeInfo block: Use QDict helpers for --force-share shutdown: Expose bool cause in SHUTDOWN and RESET events shutdown: Add source information to SHUTDOWN and RESET shutdown: Preserve shutdown cause through replay shutdown: Prepare for use of an enum in reset/shutdown_request shutdown: Simplify shutdown_signal sockets: Plug memory leak in socket_address_flatten() scripts/qmp/qom-set: fix the value argument passed to srv.command() Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
commit
d0eda02938
80 changed files with 204 additions and 159 deletions
|
@ -13,6 +13,7 @@
|
|||
*/
|
||||
|
||||
#include "qapi-types.h"
|
||||
#include "sysemu.h"
|
||||
|
||||
/* replay clock kinds */
|
||||
enum ReplayClockKind {
|
||||
|
@ -98,7 +99,7 @@ int64_t replay_read_clock(ReplayClockKind kind);
|
|||
/* Events */
|
||||
|
||||
/*! Called when qemu shutdown is requested. */
|
||||
void replay_shutdown_request(void);
|
||||
void replay_shutdown_request(ShutdownCause cause);
|
||||
/*! Should be called at check points in the execution.
|
||||
These check points are skipped, if they were not met.
|
||||
Saves checkpoint in the SAVE mode and validates in the PLAY mode.
|
||||
|
|
|
@ -33,8 +33,26 @@ VMChangeStateEntry *qemu_add_vm_change_state_handler(VMChangeStateHandler *cb,
|
|||
void qemu_del_vm_change_state_handler(VMChangeStateEntry *e);
|
||||
void vm_state_notify(int running, RunState state);
|
||||
|
||||
#define VMRESET_SILENT false
|
||||
#define VMRESET_REPORT true
|
||||
/* Enumeration of various causes for shutdown. */
|
||||
typedef enum ShutdownCause {
|
||||
SHUTDOWN_CAUSE_NONE, /* No shutdown request pending */
|
||||
SHUTDOWN_CAUSE_HOST_ERROR, /* An error prevents further use of guest */
|
||||
SHUTDOWN_CAUSE_HOST_QMP, /* Reaction to a QMP command, like 'quit' */
|
||||
SHUTDOWN_CAUSE_HOST_SIGNAL, /* Reaction to a signal, such as SIGINT */
|
||||
SHUTDOWN_CAUSE_HOST_UI, /* Reaction to UI event, like window close */
|
||||
SHUTDOWN_CAUSE_GUEST_SHUTDOWN,/* Guest shutdown/suspend request, via
|
||||
ACPI or other hardware-specific means */
|
||||
SHUTDOWN_CAUSE_GUEST_RESET, /* Guest reset request, and command line
|
||||
turns that into a shutdown */
|
||||
SHUTDOWN_CAUSE_GUEST_PANIC, /* Guest panicked, and command line turns
|
||||
that into a shutdown */
|
||||
SHUTDOWN_CAUSE__MAX,
|
||||
} ShutdownCause;
|
||||
|
||||
static inline bool shutdown_caused_by_guest(ShutdownCause cause)
|
||||
{
|
||||
return cause >= SHUTDOWN_CAUSE_GUEST_SHUTDOWN;
|
||||
}
|
||||
|
||||
void vm_start(void);
|
||||
int vm_prepare_start(void);
|
||||
|
@ -49,23 +67,23 @@ 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);
|
||||
void qemu_system_vmstop_request(RunState reason);
|
||||
void qemu_system_vmstop_request_prepare(void);
|
||||
bool qemu_vmstop_requested(RunState *r);
|
||||
int qemu_shutdown_requested_get(void);
|
||||
int qemu_reset_requested_get(void);
|
||||
ShutdownCause qemu_shutdown_requested_get(void);
|
||||
ShutdownCause qemu_reset_requested_get(void);
|
||||
void qemu_system_killed(int signal, pid_t pid);
|
||||
void qemu_system_reset(bool report);
|
||||
void qemu_system_reset(ShutdownCause reason);
|
||||
void qemu_system_guest_panicked(GuestPanicInformation *info);
|
||||
|
||||
void qemu_add_exit_notifier(Notifier *notify);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue