libvirt/src/qemu
Eric Blake 3bef4adf73 qemu: nicer error message if live disk snapshot unsupported
Without this patch, attempts to create a disk snapshot when qemu
is too old results in a cryptic message:

virsh # snapshot-create 23 --disk-only
error: operation failed: Failed to take snapshot: unknown command: 'snapshot_blkdev'

Now it reports:

virsh # snapshot-create 23 --disk-only
error: unsupported configuration: live disk snapshot not supported with this QEMU binary

All versions of qemu that support live disk snapshot also support
QMP (basically upstream qemu 1.1 and later, and backports to RHEL 6.2).

* src/qemu/qemu_capabilities.h (QEMU_CAPS_DISK_SNAPSHOT): New
capability.
* src/qemu/qemu_capabilities.c (qemuCaps): Track it.
(qemuCapsProbeQMPCommands): Set it.
* src/qemu/qemu_driver.c (qemuDomainSnapshotCreateDiskActive): Use
it.
* src/qemu/qemu_monitor.c (qemuMonitorDiskSnapshot): Simplify.
* src/qemu/qemu_monitor_json.c (qemuMonitorJSONDiskSnapshot):
Likewise.
* src/qemu/qemu_monitor_text.h (qemuMonitorTextDiskSnapshot):
Delete.
* src/qemu/qemu_monitor_text.c (qemuMonitorTextDiskSnapshot):
Likewise.
2012-12-04 15:53:41 -07:00
..
libvirtd_qemu.aug qemu: conf: add seccomp_sandbox option 2012-09-18 15:43:28 +08:00
MIGRATION.txt qemu: Implement migration job phases 2011-07-27 08:45:09 -06:00
qemu_agent.c qemu: Remove full stop from error messages 2012-11-29 14:16:48 +01:00
qemu_agent.h qemu: Implement virDomainFSTrim 2012-11-28 16:15:01 +01:00
qemu_bridge_filter.c Replace 'struct qemud_driver *' with virQEMUDriverPtr 2012-11-28 18:17:25 +00:00
qemu_bridge_filter.h Replace 'struct qemud_driver *' with virQEMUDriverPtr 2012-11-28 18:17:25 +00:00
qemu_capabilities.c qemu: nicer error message if live disk snapshot unsupported 2012-12-04 15:53:41 -07:00
qemu_capabilities.h qemu: nicer error message if live disk snapshot unsupported 2012-12-04 15:53:41 -07:00
qemu_cgroup.c Replace 'struct qemud_driver *' with virQEMUDriverPtr 2012-11-28 18:17:25 +00:00
qemu_cgroup.h Replace 'struct qemud_driver *' with virQEMUDriverPtr 2012-11-28 18:17:25 +00:00
qemu_command.c Replace 'struct qemud_driver *' with virQEMUDriverPtr 2012-11-28 18:17:25 +00:00
qemu_command.h Replace 'struct qemud_driver *' with virQEMUDriverPtr 2012-11-28 18:17:25 +00:00
qemu_conf.c qemu: Refactor error reporting in qemu driver configuration parser 2012-11-29 22:23:16 +01:00
qemu_conf.h Replace polling for active VMs with signalling by drivers 2012-12-04 12:14:04 +00:00
qemu_domain.c Rename misc QEMU structs/enums to use normal naming style 2012-11-28 18:17:31 +00:00
qemu_domain.h Rename misc QEMU structs/enums to use normal naming style 2012-11-28 18:17:31 +00:00
qemu_driver.c qemu: nicer error message if live disk snapshot unsupported 2012-12-04 15:53:41 -07:00
qemu_driver.h maint: fix up copyright notice inconsistencies 2012-09-20 16:30:55 -06:00
qemu_hostdev.c Replace 'struct qemud_driver *' with virQEMUDriverPtr 2012-11-28 18:17:25 +00:00
qemu_hostdev.h Replace 'struct qemud_driver *' with virQEMUDriverPtr 2012-11-28 18:17:25 +00:00
qemu_hotplug.c qemu: support live update of an interface's filter 2012-12-03 14:35:58 -05:00
qemu_hotplug.h Replace 'struct qemud_driver *' with virQEMUDriverPtr 2012-11-28 18:17:25 +00:00
qemu_migration.c Replace 'struct qemud_driver *' with virQEMUDriverPtr 2012-11-28 18:17:25 +00:00
qemu_migration.h Replace 'struct qemud_driver *' with virQEMUDriverPtr 2012-11-28 18:17:25 +00:00
qemu_monitor_json.c qemu: nicer error message if live disk snapshot unsupported 2012-12-04 15:53:41 -07:00
qemu_monitor_json.h qemu: don't attempt undefined QMP commands 2012-11-30 09:51:09 -07:00
qemu_monitor_text.c qemu: nicer error message if live disk snapshot unsupported 2012-12-04 15:53:41 -07:00
qemu_monitor_text.h qemu: nicer error message if live disk snapshot unsupported 2012-12-04 15:53:41 -07:00
qemu_monitor.c qemu: nicer error message if live disk snapshot unsupported 2012-12-04 15:53:41 -07:00
qemu_monitor.h Make non-KVM machines work with QMP probing 2012-10-31 08:31:49 +01:00
qemu_process.c Replace polling for active VMs with signalling by drivers 2012-12-04 12:14:04 +00:00
qemu_process.h Replace 'struct qemud_driver *' with virQEMUDriverPtr 2012-11-28 18:17:25 +00:00
qemu.conf doc: update description about user/group in qemu.conf 2012-10-09 08:38:36 -06:00
test_libvirtd_qemu.aug.in Fix the augea test for qemu libvirtd options 2012-09-18 16:28:43 +08:00
THREADS.txt qemu: fix crash when mixing sync and async monitor jobs 2011-08-01 09:41:57 -06:00