[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 05/13] qemu-ga: guest-suspend-ram: don't emit a succ
From: |
Michael Roth |
Subject: |
[Qemu-devel] [PATCH 05/13] qemu-ga: guest-suspend-ram: don't emit a success response |
Date: |
Tue, 15 May 2012 09:48:51 -0500 |
From: Luiz Capitulino <address@hidden>
Today, qemu-ga may not be able to emit a success response when
guest-suspend-ram completes. This happens because the VM may
suspend before qemu-ga is able to emit a response.
This semantic is a bit confusing, as it's not clear for clients if
they should wait for a response or how they should check for success.
This commit solves that problem by changing guest-suspend-ram to
never emit a success response and suggests in the documentation
what clients should do to check for success.
Signed-off-by: Luiz Capitulino <address@hidden>
Signed-off-by: Michael Roth <address@hidden>
---
qapi-schema-guest.json | 16 ++++++++++------
1 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/qapi-schema-guest.json b/qapi-schema-guest.json
index 88b165c..50e2815 100644
--- a/qapi-schema-guest.json
+++ b/qapi-schema-guest.json
@@ -395,17 +395,21 @@
# command. Thus, it's *required* to query QEMU for the presence of the
# 'system_wakeup' command before issuing guest-suspend-ram.
#
-# Returns: nothing on success
+# This command does NOT return a response on success. There are two options
+# to check for success:
+# 1. Wait for the SUSPEND QMP event from QEMU
+# 2. Issue the query-status QMP command to confirm the VM status is
+# "suspended"
+#
+# The following errors may be returned:
# If suspend to ram is not supported, Unsupported
#
-# Notes: o This is an asynchronous request. There's no guarantee a response
-# will be sent
-# o It's strongly recommended to issue the guest-sync command before
-# sending commands when the guest resumes
+# Notes: It's strongly recommended to issue the guest-sync command before
+# sending commands when the guest resumes
#
# Since: 1.1
##
-{ 'command': 'guest-suspend-ram' }
+{ 'command': 'guest-suspend-ram', 'success-response': 'no' }
##
# @guest-suspend-hybrid
--
1.7.4.1
- [Qemu-devel] [PULL] qemu-ga fixes for 1.1, Michael Roth, 2012/05/15
- [Qemu-devel] [PATCH 02/13] qemu-ga: don't warn on no command return, Michael Roth, 2012/05/15
- [Qemu-devel] [PATCH 04/13] qemu-ga: guest-suspend-disk: don't emit a success response, Michael Roth, 2012/05/15
- [Qemu-devel] [PATCH 01/13] qapi: add support for command options, Michael Roth, 2012/05/15
- [Qemu-devel] [PATCH 03/13] qemu-ga: guest-shutdown: don't emit a success response, Michael Roth, 2012/05/15
- [Qemu-devel] [PATCH 05/13] qemu-ga: guest-suspend-ram: don't emit a success response,
Michael Roth <=
- [Qemu-devel] [PATCH 12/13] qemu-ga: fix segv after failure to open log file, Michael Roth, 2012/05/15
- [Qemu-devel] [PATCH 06/13] qemu-ga: guest-suspend-hybrid: don't emit a success response, Michael Roth, 2012/05/15
- [Qemu-devel] [PATCH 11/13] qemu-ga: guest-shutdown: use only async-signal-safe functions, Michael Roth, 2012/05/15
- [Qemu-devel] [PATCH 08/13] qemu-ga: become_daemon(): reopen standard fds to /dev/null, Michael Roth, 2012/05/15
- [Qemu-devel] [PATCH 07/13] qemu-ga: make reopen_fd_to_null() public, Michael Roth, 2012/05/15
- [Qemu-devel] [PATCH 09/13] qemu-ga: guest-suspend: make the API synchronous, Michael Roth, 2012/05/15
- [Qemu-devel] [PATCH 10/13] qemu-ga: guest-shutdown: become synchronous, Michael Roth, 2012/05/15
- [Qemu-devel] [PATCH 13/13] qemu-ga: align versioning with QEMU_VERSION, Michael Roth, 2012/05/15
- Re: [Qemu-devel] [PULL] qemu-ga fixes for 1.1, Luiz Capitulino, 2012/05/21