mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 15:53:54 -06:00
qmp: generalize watchdog-set-action to -no-reboot/-no-shutdown
Add a QMP command to allow for the behaviors specified by the -no-reboot and -no-shutdown command line option to be set at runtime. The new command is named set-action and takes optional arguments, named after an event, that provide a corresponding action to take. Example: -> { "execute": "set-action", "arguments": { "reboot": "none", "shutdown": "poweroff", "watchdog": "debug" } } <- { "return": {} } Suggested-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Alejandro Jimenez <alejandro.j.jimenez@oracle.com> Message-Id: <1607705564-26264-4-git-send-email-alejandro.j.jimenez@oracle.com> [Split the series differently, with -action based on the QMP command. - Paolo] Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
ebe3444468
commit
e6dba04813
11 changed files with 134 additions and 13 deletions
|
@ -325,6 +325,34 @@
|
|||
'data': [ 'reset', 'shutdown', 'poweroff', 'pause', 'debug', 'none',
|
||||
'inject-nmi' ] }
|
||||
|
||||
##
|
||||
# @RebootAction:
|
||||
#
|
||||
# Possible QEMU actions upon guest reboot
|
||||
#
|
||||
# @none: Reset the VM
|
||||
#
|
||||
# @shutdown: Shutdown the VM and exit
|
||||
#
|
||||
# Since: 6.0
|
||||
##
|
||||
{ 'enum': 'RebootAction',
|
||||
'data': [ 'none', 'shutdown' ] }
|
||||
|
||||
##
|
||||
# @ShutdownAction:
|
||||
#
|
||||
# Possible QEMU actions upon guest shutdown
|
||||
#
|
||||
# @poweroff: Shutdown the VM and exit
|
||||
#
|
||||
# @pause: pause the VM#
|
||||
#
|
||||
# Since: 6.0
|
||||
##
|
||||
{ 'enum': 'ShutdownAction',
|
||||
'data': [ 'poweroff', 'pause' ] }
|
||||
|
||||
##
|
||||
# @watchdog-set-action:
|
||||
#
|
||||
|
@ -334,6 +362,36 @@
|
|||
##
|
||||
{ 'command': 'watchdog-set-action', 'data' : {'action': 'WatchdogAction'} }
|
||||
|
||||
##
|
||||
# @set-action:
|
||||
#
|
||||
# Set the actions that will be taken by the emulator in response to guest
|
||||
# events.
|
||||
#
|
||||
# @reboot: @RebootAction action taken on guest reboot.
|
||||
#
|
||||
# @shutdown: @ShutdownAction action taken on guest shutdown.
|
||||
#
|
||||
# @watchdog: @WatchdogAction action taken when watchdog timer expires .
|
||||
#
|
||||
# Returns: Nothing on success.
|
||||
#
|
||||
# Since: 6.0
|
||||
#
|
||||
# Example:
|
||||
#
|
||||
# -> { "execute": "set-action",
|
||||
# "arguments": { "reboot": "shutdown",
|
||||
# "shutdown" : "pause",
|
||||
# "watchdog": "inject-nmi" } }
|
||||
# <- { "return": {} }
|
||||
##
|
||||
{ 'command': 'set-action',
|
||||
'data': { '*reboot': 'RebootAction',
|
||||
'*shutdown': 'ShutdownAction',
|
||||
'*watchdog': 'WatchdogAction' },
|
||||
'allow-preconfig': true }
|
||||
|
||||
##
|
||||
# @GUEST_PANICKED:
|
||||
#
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue