libvirt/tools
Adam Litke a696f8b71a blockjob: add API for async virDomainBlockJobAbort
Block job cancellation can take a while.  Now that upstream qemu 1.1
has asynchronous block cancellation, we want to expose that to the user.
Therefore, the following updates are made to the virDomainBlockJob API:

A new block job event type VIR_DOMAIN_BLOCK_JOB_CANCELED is managed by
libvirt.  Regardless of the flags used with virDomainBlockJobAbort, this
event will be raised: 1. when using synchronous block_job_cancel (the
event will be synthesized by libvirt), and 2. whenever it is received
from qemu (via asynchronous block-job-cancel).  Note that the event
may be detected by libvirt even before the virDomainBlockJobAbort
completes (always true when it is synthesized, but also possible if
cancellation was fast).

A new extension flag VIR_DOMAIN_BLOCK_JOB_ABORT_ASYNC is added to the
virDomainBlockJobAbort API.  When enabled, this function will allow
(but not require) asynchronous operation (ie, it returns as soon as
possible, which might be before the job has actually been canceled).
When the API is used in this mode, it is the responsibility of the
caller to wait for a VIR_DOMAIN_BLOCK_JOB_CANCELED event or poll via
the virDomainGetBlockJobInfo API to check the cancellation status.

This patch also exposes the new flag through virsh, and makes virsh
slightly easier to use (--async implies --abort, and lack of any options
implies --info), although it leaves the qemu implementation for later
patches.

Signed-off-by: Adam Litke <agl@us.ibm.com>
Cc: Stefan Hajnoczi <stefanha@gmail.com>
Signed-off-by: Eric Blake <eblake@redhat.com>
2012-04-11 20:52:18 -06:00
..
console.c virsh: Clarify escape sequence 2012-04-03 17:03:53 +02:00
console.h virsh: add support for VIR_DOMAIN_CONSOLE_* flags 2012-02-27 15:05:17 +01:00
libvirt_win_icon_16x16.ico Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
libvirt_win_icon_32x32.ico Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
libvirt_win_icon_48x48.ico Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
libvirt_win_icon_64x64.ico Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
libvirt-guests.init.sh libvirt-guests: Add parallel startup and shutdown of guests 2012-03-05 13:18:24 +01:00
libvirt-guests.service.in Add support for systemd init service 2011-11-18 16:16:02 +00:00
libvirt-guests.sysconf libvirt-guests: Add parallel startup and shutdown of guests 2012-03-05 13:18:24 +01:00
Makefile.am build: clean up CPPFLAGS/INCLUDES usage 2012-02-03 10:36:02 -07:00
virsh_win_icon.rc Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
virsh.c blockjob: add API for async virDomainBlockJobAbort 2012-04-11 20:52:18 -06:00
virsh.pod blockjob: add API for async virDomainBlockJobAbort 2012-04-11 20:52:18 -06:00
virt-host-validate-common.c build: avoid 'devname' for BSD 2012-03-29 17:08:27 -06:00
virt-host-validate-common.h Add a virt-host-validate command to sanity check HV config 2012-01-27 17:53:18 +00:00
virt-host-validate-lxc.c Add a virt-host-validate command to sanity check HV config 2012-01-27 17:53:18 +00:00
virt-host-validate-lxc.h Add a virt-host-validate command to sanity check HV config 2012-01-27 17:53:18 +00:00
virt-host-validate-qemu.c Add a virt-host-validate command to sanity check HV config 2012-01-27 17:53:18 +00:00
virt-host-validate-qemu.h Add a virt-host-validate command to sanity check HV config 2012-01-27 17:53:18 +00:00
virt-host-validate.c build: fix missing include 2012-01-27 11:18:35 -07:00
virt-pki-validate.in virt-*-validate.in: quote all variable references 2011-02-21 10:32:34 -07:00
virt-sanlock-cleanup.in Fix virt-sanlock-cleanup documentation 2011-10-17 10:57:36 -06:00
virt-xml-validate.in virt-*-validate.in: quote all variable references 2011-02-21 10:32:34 -07:00