[libvirt] [PATCHv3 2/6] flags: simplify qemu migration flags

Eric Blake eblake at redhat.com
Fri Jul 15 18:32:02 UTC 2011


On 07/15/2011 12:26 PM, Eric Blake wrote:
> On 07/15/2011 09:27 AM, Matthias Bolte wrote:
>> 2011/7/15 Eric Blake <eblake at redhat.com>:
>>> * src/qemu/qemu_driver.c (QEMU_MIGRATION_FLAGS): New define.
>>> Simplify all migration callbacks.
>>> ---
>>>
>>> v3: new patch
>>>
>>>  src/qemu/qemu_driver.c |  101 ++++++++++--------------------------------------
>>>  1 files changed, 21 insertions(+), 80 deletions(-)
>>
>> ACK.
> 
> Ouch.  Stefan pointed out on IRC that I added a virCheckFlags(0,01) in
> qemuMigrationConfirm() which is indeed a regression that breaks qemu
> migration.  I'll have to fix that before pushing this.  :(

Found it, so I'm squashing this in, as well as updating the commit message:

    flags: fix qemu migration regression

    Commit f548480b broke migration v3 on qemu, because the driver
    passed flags on through to qemu_migration even though
    qemu_migration wasn't using those flags.


diff --git i/src/qemu/qemu_driver.c w/src/qemu/qemu_driver.c
index 3e0479c..8d146aa 100644
--- i/src/qemu/qemu_driver.c
+++ w/src/qemu/qemu_driver.c
@@ -112,17 +112,6 @@

 #define QEMU_NB_BLKIO_PARAM  1

-/* All supported qemu migration flags.  */
-#define QEMU_MIGRATION_FLAGS                    \
-    (VIR_MIGRATE_LIVE |                         \
-     VIR_MIGRATE_PEER2PEER |                    \
-     VIR_MIGRATE_TUNNELLED |                    \
-     VIR_MIGRATE_PERSIST_DEST |                 \
-     VIR_MIGRATE_UNDEFINE_SOURCE |              \
-     VIR_MIGRATE_PAUSED |                       \
-     VIR_MIGRATE_NON_SHARED_DISK |              \
-     VIR_MIGRATE_NON_SHARED_INC)
-
 static void processWatchdogEvent(void *data, void *opaque);

 static int qemudShutdown(void);
diff --git i/src/qemu/qemu_migration.c w/src/qemu/qemu_migration.c
index b8f563b..dfa80e3 100644
--- i/src/qemu/qemu_migration.c
+++ w/src/qemu/qemu_migration.c
@@ -2575,7 +2575,7 @@ int qemuMigrationConfirm(struct qemud_driver *driver,
               driver, conn, vm, NULLSTR(cookiein), cookieinlen,
               flags, retcode);

-    virCheckFlags(0, -1);
+    virCheckFlags(QEMU_MIGRATION_FLAGS, -1);

     if (!(mig = qemuMigrationEatCookie(driver, vm, cookiein,
cookieinlen, 0)))
         return -1;
diff --git i/src/qemu/qemu_migration.h w/src/qemu/qemu_migration.h
index d3a3743..df3f06f 100644
--- i/src/qemu/qemu_migration.h
+++ w/src/qemu/qemu_migration.h
@@ -24,6 +24,16 @@

 # include "qemu_conf.h"

+/* All supported qemu migration flags.  */
+#define QEMU_MIGRATION_FLAGS                    \
+    (VIR_MIGRATE_LIVE |                         \
+     VIR_MIGRATE_PEER2PEER |                    \
+     VIR_MIGRATE_TUNNELLED |                    \
+     VIR_MIGRATE_PERSIST_DEST |                 \
+     VIR_MIGRATE_UNDEFINE_SOURCE |              \
+     VIR_MIGRATE_PAUSED |                       \
+     VIR_MIGRATE_NON_SHARED_DISK |              \
+     VIR_MIGRATE_NON_SHARED_INC)

 bool qemuMigrationIsAllowed(virDomainDefPtr def)
     ATTRIBUTE_NONNULL(1);




> 
> 
> 
> --
> libvir-list mailing list
> libvir-list at redhat.com
> https://www.redhat.com/mailman/listinfo/libvir-list

-- 
Eric Blake   eblake at redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 619 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20110715/7ff2f825/attachment-0001.sig>


More information about the libvir-list mailing list