Skip to contentSkip to conversation

qga: update docs with systemd suspend support info

PATCH Superseded Daniel Henrique Barboza 2 participants 4 messages Nov 13, 2018

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 qga: update docs with systemd suspend support info

Commit 067927d62e ("qga: systemd hibernate/suspend/hybrid-sleep support") failed to update qapi-schema.json after adding systemd hibernate/suspend/hybrid-sleep capabilities to guest-suspend-* QGA commands.

---
 qga/qapi-schema.json | 37 ++++++++++++++++++++++++++-----------
 1 file changed, 26 insertions(+), 11 deletions(-)
qga/qapi-schema.json +26 -11
index c6725b3ec8..74b1bdbc76 100644
@@ -532,12 +532,16 @@
 #
 # Suspend guest to disk.
 #
-# This command tries to execute the scripts provided by the pm-utils package.
-# If it's not available, the suspend operation will be performed by manually
-# writing to a sysfs file.
+# This command attempts to suspend the guest using three strategies, in this
+# order:
 #
-# For the best results it's strongly recommended to have the pm-utils
-# package installed in the guest.
+# - systemd hibernate
+# - pm-utils (via pm-hibernate)
+# - manual write into sysfs
+#
+# If the guest does not have systemd hibernate support, the scripts in pm-utils
+# package are executed, in case pm-utils is available. Manual write in sysfs
+# is a last resort.
 #
 # This command does NOT return a response on success. There is a high chance
 # the command succeeded if the VM exits with a zero exit status or, when
@@ -560,12 +564,16 @@
 #
 # Suspend guest to ram.
 #
-# This command tries to execute the scripts provided by the pm-utils package.
-# If it's not available, the suspend operation will be performed by manually
-# writing to a sysfs file.
+# This command attempts to suspend the guest using three strategies, in this
+# order:
+#
+# - systemd suspend
+# - pm-utils (via pm-suspend)
+# - manual write into sysfs
 #
-# For the best results it's strongly recommended to have the pm-utils
-# package installed in the guest.
+# If the guest does not have systemd suspend support, the scripts in pm-utils
+# package are executed, in case pm-utils is available. Manual write in sysfs
+# is a last resort.
 #
 # IMPORTANT: guest-suspend-ram requires QEMU to support the 'system_wakeup'
 # command.  Thus, it's *required* to query QEMU for the presence of the
@@ -592,7 +600,14 @@
 #
 # Save guest state to disk and suspend to ram.
 #
-# This command requires the pm-utils package to be installed in the guest.
+# This command attempts to suspend the guest using three strategies, in this
+# order:
+#
+# - systemd hybrid-sleep
+# - pm-utils (via pm-suspend-hybrid)
+#
+# If the guest does not have systemd hybrid-sleep support, the scripts in
+# pm-utils package are executed, in case pm-utils is available.
 #
 # IMPORTANT: guest-suspend-hybrid requires QEMU to support the 'system_wakeup'
 # command.  Thus, it's *required* to query QEMU for the presence of the
Signature · 1 line
2.19.1
#1 lore raw
Quoted 20 lines · Daniel Henrique Barboza

Commit 067927d62e ("qga: systemd hibernate/suspend/hybrid-sleep support") failed to update qapi-schema.json after adding systemd hibernate/suspend/hybrid-sleep capabilities to guest-suspend-* QGA commands.

---
  qga/qapi-schema.json | 37 ++++++++++++++++++++++++++-----------
  1 file changed, 26 insertions(+), 11 deletions(-)

+++ b/qga/qapi-schema.json

qga/qapi-schema.json +2 -3
@@ -532,12 +532,16 @@
  #
  # Suspend guest to disk.
  #
-# This command tries to execute the scripts provided by the pm-utils package.
-# If it's not available, the suspend operation will be performed by manually
-# writing to a sysfs file.
+# This command attempts to suspend the guest using three strategies, in this
+# order:

qga/qapi-schema.json line 544

Quoted 10 lines
qga/qapi-schema.json +7 -2
  #
-# For the best results it's strongly recommended to have the pm-utils
-# package installed in the guest.
+# - systemd hibernate
+# - pm-utils (via pm-hibernate)
+# - manual write into sysfs
+#
+# If the guest does not have systemd hibernate support, the scripts in pm-utils
+# package are executed, in case pm-utils is available. Manual write in sysfs
+# is a last resort.

Does this paragraph add any information compared to the earlier list?

Quoted 12 lines
qga/qapi-schema.json +2 -3
  #
  # This command does NOT return a response on success. There is a high chance
  # the command succeeded if the VM exits with a zero exit status or, when
@@ -560,12 +564,16 @@
  #
  # Suspend guest to ram.
  #
-# This command tries to execute the scripts provided by the pm-utils package.
-# If it's not available, the suspend operation will be performed by manually
-# writing to a sysfs file.
+# This command attempts to suspend the guest using three strategies, in this
+# order:

qga/qapi-schema.json line 576

Quoted 10 lines
qga/qapi-schema.json +7 -2
+#
+# - systemd suspend
+# - pm-utils (via pm-suspend)
+# - manual write into sysfs
  #
-# For the best results it's strongly recommended to have the pm-utils
-# package installed in the guest.
+# If the guest does not have systemd suspend support, the scripts in pm-utils
+# package are executed, in case pm-utils is available. Manual write in sysfs
+# is a last resort.

Likewise.

Quoted 6 lines
qga/qapi-schema.json +0 -0
  #
  # IMPORTANT: guest-suspend-ram requires QEMU to support the 'system_wakeup'
  # command.  Thus, it's *required* to query QEMU for the presence of the
@@ -592,7 +600,14 @@
  #
  # Save guest state to disk and suspend to ram.

qga/qapi-schema.json line 610

Quoted 10 lines
qga/qapi-schema.json +8 -1
  #
-# This command requires the pm-utils package to be installed in the guest.
+# This command attempts to suspend the guest using three strategies, in this
+# order:
+#
+# - systemd hybrid-sleep
+# - pm-utils (via pm-suspend-hybrid)
+#
+# If the guest does not have systemd hybrid-sleep support, the scripts in
+# pm-utils package are executed, in case pm-utils is available.

"using three strategies" but a list of only 2 seems odd.

Signature · 3 lines
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3266
Virtualization:  qemu.org | libvirt.org
#2 lore raw
Quoted 30 lines · Eric Blake
Quoted 29 lines · Daniel Henrique Barboza

Commit 067927d62e ("qga: systemd hibernate/suspend/hybrid-sleep support") failed to update qapi-schema.json after adding systemd hibernate/suspend/hybrid-sleep capabilities to guest-suspend-* QGA commands.

---
  qga/qapi-schema.json | 37 ++++++++++++++++++++++++++-----------

  1 file changed, 26 insertions(+), 11 deletions(-)

+++ b/qga/qapi-schema.json

qga/qapi-schema.json +0 -1
@@ -532,12 +532,16 @@
   #
   # Suspend guest to disk.
   #
-# This command tries to execute the scripts provided by the pm-utils 

package.
-# If it's not available, the suspend operation will be performed by manually

(quoted diff) +1 -1
-# writing to a sysfs file.
+# This command attempts to suspend the guest using three strategies, 

in this
+# order:
  #

qga/qapi-schema.json +3 -2
-# For the best results it's strongly recommended to have the pm-utils
-# package installed in the guest.
+# - systemd hibernate
+# - pm-utils (via pm-hibernate)
+# - manual write into sysfs
Quoted 8 lines
Quoted 6 lines
(quoted diff) +2 -0
+#
+# If the guest does not have systemd hibernate support, the scripts 

in pm-utils
+# package are executed, in case pm-utils is available. Manual write in sysfs
+# is a last resort.

Does this paragraph add any information compared to the earlier list?

Perhaps we can remove the paragraph and add "if available" remarks in the listing? Like:

+# - systemd hibernate, if supported
+# - pm-utils (via pm-hibernate), if pm-utils is installed +# - manual write into sysfs as a last resort

Same for the other 2 cases below.

Quoted 44 lines
Quoted 24 lines

  #
  # This command does NOT return a response on success. There is a high chance

  # the command succeeded if the VM exits with a zero exit status or, when
qga/qapi-schema.json +0 -1
@@ -560,12 +564,16 @@
   #
   # Suspend guest to ram.
   #
-# This command tries to execute the scripts provided by the pm-utils 

package.
-# If it's not available, the suspend operation will be performed by manually

(quoted diff) +1 -1
-# writing to a sysfs file.
+# This command attempts to suspend the guest using three strategies, 

in this

qga/qapi-schema.json +5 -0
+# order:
+#
+# - systemd suspend
+# - pm-utils (via pm-suspend)
+# - manual write into sysfs

  #

qga/qapi-schema.json +1 -2
-# For the best results it's strongly recommended to have the pm-utils
-# package installed in the guest.
+# If the guest does not have systemd suspend support, the scripts in 
Quoted 4 lines

pm-utils
+# package are executed, in case pm-utils is available. Manual write in sysfs
+# is a last resort.

Likewise.

Quoted 13 lines

  #
  # IMPORTANT: guest-suspend-ram requires QEMU to support the 'system_wakeup' # command.  Thus, it's *required* to query QEMU for the presence of the

qga/qapi-schema.json +0 -1
@@ -592,7 +600,14 @@
   #
   # Save guest state to disk and suspend to ram.
   #
-# This command requires the pm-utils package to be installed in the 

guest.
+# This command attempts to suspend the guest using three strategies, in this

(quoted diff) +2 -0
+# order:
+#
Quoted 9 lines
Quoted 6 lines
qga/qapi-schema.json +4 -0
+# - systemd hybrid-sleep
+# - pm-utils (via pm-suspend-hybrid)
+#
+# If the guest does not have systemd hybrid-sleep support, the 

scripts in
+# pm-utils package are executed, in case pm-utils is available.

"using three strategies" but a list of only 2 seems odd.

Copy/paste busted!

#3 lore raw
Quoted 49 lines · Daniel Henrique Barboza
Quoted 30 lines · Eric Blake
Quoted 29 lines · Daniel Henrique Barboza

Commit 067927d62e ("qga: systemd hibernate/suspend/hybrid-sleep support") failed to update qapi-schema.json after adding systemd hibernate/suspend/hybrid-sleep capabilities to guest-suspend-* QGA commands.

---
  qga/qapi-schema.json | 37 ++++++++++++++++++++++++++-----------

  1 file changed, 26 insertions(+), 11 deletions(-)

+++ b/qga/qapi-schema.json

qga/qapi-schema.json +0 -1
@@ -532,12 +532,16 @@
   #
   # Suspend guest to disk.
   #
-# This command tries to execute the scripts provided by the 

pm-utils package.
-# If it's not available, the suspend operation will be performed by manually

(quoted diff) +1 -1
-# writing to a sysfs file.
+# This command attempts to suspend the guest using three 

strategies, in this
+# order:
  #

qga/qapi-schema.json +3 -2
-# For the best results it's strongly recommended to have the pm-utils
-# package installed in the guest.
+# - systemd hibernate
+# - pm-utils (via pm-hibernate)
+# - manual write into sysfs
Quoted 8 lines
Quoted 6 lines
(quoted diff) +2 -0
+#
+# If the guest does not have systemd hibernate support, the scripts 

in pm-utils
+# package are executed, in case pm-utils is available. Manual write in sysfs
+# is a last resort.

Does this paragraph add any information compared to the earlier list?

Perhaps we can remove the paragraph and add "if available" remarks in the listing? Like:

(quoted diff) +3 -0
+# - systemd hibernate, if supported
+# - pm-utils (via pm-hibernate), if pm-utils is installed
+# - manual write into sysfs as a last resort
Quoted 1 line

Same for the other 2 cases below.

Actually, nevermind. Removing the extra paragraph and keeping the list as is seems cleaner. One can easily assume that, in the lack of guest support of systemd hibernate, the command will try the next option. Same thing with pm-utils.

Quoted 56 lines
Quoted 45 lines
Quoted 25 lines

  #
  # This command does NOT return a response on success. There is a high chance

  # the command succeeded if the VM exits with a zero exit status or, when
qga/qapi-schema.json +0 -1
@@ -560,12 +564,16 @@
   #
   # Suspend guest to ram.
   #
-# This command tries to execute the scripts provided by the 

pm-utils package.
-# If it's not available, the suspend operation will be performed by manually

(quoted diff) +1 -1
-# writing to a sysfs file.
+# This command attempts to suspend the guest using three 

strategies, in this

qga/qapi-schema.json +5 -0
+# order:
+#
+# - systemd suspend
+# - pm-utils (via pm-suspend)
+# - manual write into sysfs

  #

qga/qapi-schema.json +1 -2
-# For the best results it's strongly recommended to have the pm-utils
-# package installed in the guest.
+# If the guest does not have systemd suspend support, the scripts 
Quoted 4 lines

in pm-utils
+# package are executed, in case pm-utils is available. Manual write in sysfs
+# is a last resort.

Likewise.

Quoted 13 lines

  #
  # IMPORTANT: guest-suspend-ram requires QEMU to support the 'system_wakeup' # command.  Thus, it's *required* to query QEMU for the presence of the

qga/qapi-schema.json +0 -1
@@ -592,7 +600,14 @@
   #
   # Save guest state to disk and suspend to ram.
   #
-# This command requires the pm-utils package to be installed in the 

guest.
+# This command attempts to suspend the guest using three strategies, in this

(quoted diff) +2 -0
+# order:
+#
Quoted 9 lines
Quoted 6 lines
qga/qapi-schema.json +4 -0
+# - systemd hybrid-sleep
+# - pm-utils (via pm-suspend-hybrid)
+#
+# If the guest does not have systemd hybrid-sleep support, the 

scripts in
+# pm-utils package are executed, in case pm-utils is available.

"using three strategies" but a list of only 2 seems odd.

Copy/paste busted!