[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2 1/2] qmp: add support for system_suspend
From: |
Chen Hanxiao |
Subject: |
[Qemu-devel] [PATCH v2 1/2] qmp: add support for system_suspend |
Date: |
Sat, 28 Nov 2015 11:01:45 +0800 |
From: Chen Hanxiao <address@hidden>
This patch add support for system_suspend qmp command.
Signed-off-by: Chen Hanxiao <address@hidden>
---
qapi-schema.json | 9 +++++++++
qmp-commands.hx | 21 +++++++++++++++++++++
qmp.c | 5 +++++
3 files changed, 35 insertions(+)
diff --git a/qapi-schema.json b/qapi-schema.json
index 8b1a423..78bbb29 100644
--- a/qapi-schema.json
+++ b/qapi-schema.json
@@ -3971,3 +3971,12 @@
##
{ 'enum': 'ReplayMode',
'data': [ 'none', 'record', 'play' ] }
+
+##
+# @system_suspend:
+#
+# Performs suspend operation of a guest.
+#
+# Since: 2.5
+##
+{ 'command': 'system_suspend' }
diff --git a/qmp-commands.hx b/qmp-commands.hx
index 9d8b42f..4edb8bc 100644
--- a/qmp-commands.hx
+++ b/qmp-commands.hx
@@ -251,6 +251,27 @@ Example:
EQMP
{
+ .name = "system_suspend",
+ .args_type = "",
+ .mhandler.cmd_new = qmp_marshal_system_suspend,
+ },
+
+SQMP
+system_suspend
+----------------
+
+Send system suspend event.
+
+Arguments: None.
+
+Example:
+
+-> { "execute": "system_suspend" }
+<- { "return": {} }
+
+EQMP
+
+ {
.name = "system_powerdown",
.args_type = "",
.mhandler.cmd_new = qmp_marshal_system_powerdown,
diff --git a/qmp.c b/qmp.c
index 0a1fa19..408e418 100644
--- a/qmp.c
+++ b/qmp.c
@@ -119,6 +119,11 @@ void qmp_system_powerdown(Error **erp)
qemu_system_powerdown_request();
}
+void qmp_system_suspend(Error **erp)
+{
+ qemu_system_suspend_request();
+}
+
void qmp_cpu(int64_t index, Error **errp)
{
/* Just do nothing */
--
1.9.3