mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-23 21:34:54 +03:00
Support for a new watchdog action inject-nmi
This patch provides support for a new watchdog action "inject-nmi" which allows to define an inject of a non-maskable interrupt into a guest. Signed-off-by: Boris Fiuczynski <fiuczy@linux.vnet.ibm.com> Reviewed-by: Daniel Hansel <daniel.hansel@linux.vnet.ibm.com> Reviewed-by: Stefan Zimmermann <stzi@linux.vnet.ibm.com> Reviewed-by: Tony Krowiak <akrowiak@linux.vnet.ibm.com>
This commit is contained in:
parent
1b695be173
commit
1238dc29af
@ -5737,6 +5737,9 @@ qemu-kvm -net nic,model=? /dev/null
|
||||
<li>'none' — do nothing</li>
|
||||
<li>'dump' — automatically dump the guest
|
||||
<span class="since">Since 0.8.7</span></li>
|
||||
<li>'inject-nmi' — inject a non-maskable interrupt
|
||||
into the guest
|
||||
<span class="since">Since 1.3.0</span></li>
|
||||
</ul>
|
||||
<p>
|
||||
Note 1: the 'shutdown' action requires that the guest
|
||||
|
@ -3272,6 +3272,7 @@
|
||||
<value>pause</value>
|
||||
<value>none</value>
|
||||
<value>dump</value>
|
||||
<value>inject-nmi</value>
|
||||
</choice>
|
||||
</attribute>
|
||||
</optional>
|
||||
|
@ -2842,6 +2842,7 @@ typedef enum {
|
||||
VIR_DOMAIN_EVENT_WATCHDOG_POWEROFF, /* Guest is forcibly powered off */
|
||||
VIR_DOMAIN_EVENT_WATCHDOG_SHUTDOWN, /* Guest is requested to gracefully shutdown */
|
||||
VIR_DOMAIN_EVENT_WATCHDOG_DEBUG, /* No action, a debug message logged */
|
||||
VIR_DOMAIN_EVENT_WATCHDOG_INJECTNMI,/* Inject a non-maskable interrupt into guest */
|
||||
|
||||
# ifdef VIR_ENUM_SENTINELS
|
||||
VIR_DOMAIN_EVENT_WATCHDOG_LAST
|
||||
|
@ -506,7 +506,8 @@ VIR_ENUM_IMPL(virDomainWatchdogAction, VIR_DOMAIN_WATCHDOG_ACTION_LAST,
|
||||
"poweroff",
|
||||
"pause",
|
||||
"dump",
|
||||
"none")
|
||||
"none",
|
||||
"inject-nmi")
|
||||
|
||||
VIR_ENUM_IMPL(virDomainVideo, VIR_DOMAIN_VIDEO_TYPE_LAST,
|
||||
"vga",
|
||||
|
@ -1315,6 +1315,7 @@ typedef enum {
|
||||
VIR_DOMAIN_WATCHDOG_ACTION_PAUSE,
|
||||
VIR_DOMAIN_WATCHDOG_ACTION_DUMP,
|
||||
VIR_DOMAIN_WATCHDOG_ACTION_NONE,
|
||||
VIR_DOMAIN_WATCHDOG_ACTION_INJECTNMI,
|
||||
|
||||
VIR_DOMAIN_WATCHDOG_ACTION_LAST
|
||||
} virDomainWatchdogAction;
|
||||
|
@ -555,7 +555,7 @@ static void qemuMonitorJSONHandleRTCChange(qemuMonitorPtr mon, virJSONValuePtr d
|
||||
|
||||
VIR_ENUM_DECL(qemuMonitorWatchdogAction)
|
||||
VIR_ENUM_IMPL(qemuMonitorWatchdogAction, VIR_DOMAIN_EVENT_WATCHDOG_LAST,
|
||||
"none", "pause", "reset", "poweroff", "shutdown", "debug");
|
||||
"none", "pause", "reset", "poweroff", "shutdown", "debug", "inject-nmi");
|
||||
|
||||
static void qemuMonitorJSONHandleWatchdog(qemuMonitorPtr mon, virJSONValuePtr data)
|
||||
{
|
||||
|
@ -11703,7 +11703,8 @@ VIR_ENUM_IMPL(vshDomainEventWatchdog,
|
||||
N_("reset"),
|
||||
N_("poweroff"),
|
||||
N_("shutdown"),
|
||||
N_("debug"))
|
||||
N_("debug"),
|
||||
N_("inject-nmi"))
|
||||
|
||||
static const char *
|
||||
vshDomainEventWatchdogToString(int action)
|
||||
|
Loading…
Reference in New Issue
Block a user