---
tools/virsh.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++
tools/virsh.pod | 6 ++++++
2 files changed, 52 insertions(+), 0 deletions(-)
diff --git a/tools/virsh.c b/tools/virsh.c
index 66ba61c..4971e36 100644
--- a/tools/virsh.c
+++ b/tools/virsh.c
@@ -2436,6 +2436,50 @@ cleanup:
}
/*
+ * "dompmwakeup" command
+ */
+
+static const vshCmdInfo info_dom_pm_wakeup[] = {
+ {"help", N_("wakeup a domain suspended by dompmsuspend
command")},
+ {"desc", N_("Wakeup a domain previously suspended "
+ "by dompmsuspend command.")},
+ {NULL, NULL}
+};
+
+static const vshCmdOptDef opts_dom_pm_wakeup[] = {
+ {"domain", VSH_OT_DATA, VSH_OFLAG_REQ, N_("domain name, id or
uuid")},
+ {NULL, 0, 0, NULL}
+};
+cmdDomPMWakeup(vshControl *ctl, const vshCmd *cmd)
+{
+ virDomainPtr dom;
+ const char *name;
+ bool ret = false;
+ unsigned int flags = 0;
+
+ if (!vshConnectionUsability(ctl, ctl->conn))
+ return false;
+
+ if (!(dom = vshCommandOptDomain(ctl, cmd, &name)))
+ return false;
+
+ if (virDomainPMWakeup(dom, flags) < 0) {
+ vshError(ctl, _("Domain %s could not be woken up"),
+ virDomainGetName(dom));
+ goto cleanup;
+ }
+
+ vshPrint(ctl, _("Domain %s successfully woken up"),
+ virDomainGetName(dom));
+
+ ret = true;
+
+cleanup:
+ virDomainFree(dom);
+ return ret;
+}
+
+/*
* "create" command
*/
static const vshCmdInfo info_create[] = {
@@ -16458,6 +16502,8 @@ static const vshCmdDef domManagementCmds[] = {
{"domname", cmdDomname, opts_domname, info_domname, 0},
{"dompmsuspend", cmdDomPMSuspend,
opts_dom_pm_suspend, info_dom_pm_suspend, 0},
+ {"dompmwakeup", cmdDomPMWakeup,
+ opts_dom_pm_wakeup, info_dom_pm_wakeup, 0},
{"domuuid", cmdDomuuid, opts_domuuid, info_domuuid, 0},
{"domxml-from-native", cmdDomXMLFromNative, opts_domxmlfromnative,
info_domxmlfromnative, 0},
diff --git a/tools/virsh.pod b/tools/virsh.pod
index 6730b8b..75690e5 100644
--- a/tools/virsh.pod
+++ b/tools/virsh.pod
@@ -1289,6 +1289,12 @@ values):
disk equivallent of S4 ACPI state
hybrid RAM is saved to disk but not powered off
+=item B<dompmwakeup> I<domain-id>
+
+Wakeup a domain suspended by dompmsuspend command. Injects a wakeup
+into the guest that previously used dompmsuspend, rather than waiting
+for the previously requested duration (if any) to elapse.
+
=item B<ttyconsole> I<domain-id>
Output the device used for the TTY console of the domain. If the information
--
1.7.3.4