This series adds systemd suspend support for QGA. Some newer
guests don't have pmutils anymore, leaving us with just the
Linux state file mechanism to suspend the guest OS, which does
not support hybrid-sleep. With this implementation, QGA is
now able to hybrid suspend newer guests again.
Most of the patches are cleanups in the existing suspend code,
aiming at both simplifying it and making it easier to extend
it with systemd.
Note: checkpatch.pl complains about patch 3:
ERROR: "(foo* const*)" should be "(foo * const*)"
#94: FILE: qga/commands-posix.c:1467:
+ execve(cmd_path, (char* const*)command, environ);
ERROR: space required before that '*' (ctx:VxB)
#94: FILE: qga/commands-posix.c:1467:
+ execve(cmd_path, (char* const*)command, environ);
Not sure how to make it know that this is a cast instead
of a math operation. Suggestions welcome
Daniel Henrique Barboza (6):
qga: refactoring qmp_guest_suspend_* functions
qga: bios_supports_mode: decoupling pm-utils and sys logic
qga: guest_suspend: decoupling pm-utils and sys logic
qga: removing switch statements, adding run_process_child
qga: adding systemd hibernate/suspend/hybrid-sleep support
qga: removing bios_supports_mode
qga/commands-posix.c | 315 ++++++++++++++++++++++++++++---------------
1 file changed, 210 insertions(+), 105 deletions(-)
--
2.17.1