qemu: Fallback to HMP for snapshot commands
qemu: Fallback to HMP for snapshot commands

qemu driver in libvirt gained support for creating domain snapshots
almost a year ago in libvirt 0.8.0. Since then we enabled QMP support
for qemu >= 0.13.0 but QMP equivalents of {save,load,del}vm commands are
not implemented in current qemu (0.14.0) so the domain snapshot support
is not very useful.

This patch detects when the appropriate QMP command is not implemented
and tries to use human-monitor-command (aka HMP passthrough) to run
it's HMP equivalent.
(cherry picked from commit 89241fe0d1821febc84cd5efc5a7334bd66cc463)

Signed-off-by: Steve Hodgson <eb20a6615749cf04ff61aa37e18f749ed6d01446@solarflare.com>

sshah-solarflare/Libvirt-PCI-passthrough-,sshah-solarflare/Libvirt-PCI-passthrough-,sshah-solarflare/Libvirt-PCI-passthrough-,sshah-solarflare/Libvirt-PCI-passthrough-,sshah-solarflare/Libvirt-PCI-passthrough-