
On Fri, May 13, 2011 at 05:05:14PM -0600, Eric Blake wrote:
On 05/13/2011 04:11 AM, Federico Simoncelli wrote:
Originally most of libvirt domain-specific calls were blocking during a migration. A new mechanism to allow specific calls (blkstat/blkinfo) to be executed in such condition has been implemented. In the long term it'd be desirable to get a more general solution to mark further APIs as migration safe, without needing special case code.
* src/qemu/qemu_migration.c: add some additional job signal flags for doing blkstat/blkinfo during a migration * src/qemu/qemu_domain.c: add a condition variable that can be used to efficiently wait for the migration code to clear the signal flag * src/qemu/qemu_driver.c: execute blkstat/blkinfo using the job signal flags during migration --- src/qemu/qemu_domain.c | 13 ++++++ src/qemu/qemu_domain.h | 9 ++++ src/qemu/qemu_driver.c | 103 ++++++++++++++++++++++++++++++++------------- src/qemu/qemu_migration.c | 38 ++++++++++++++++- 4 files changed, 131 insertions(+), 32 deletions(-)
ACK; but pending danpb's commits actually going in.
I've pushed my migration series, so this can be rebased now Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|