]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: migration: Disallow migration of read only disk
authorCorey S. McQuay <csmcquay@linux.vnet.ibm.com>
Mon, 26 Sep 2016 17:16:00 +0000 (13:16 -0400)
committerPeter Krempa <pkrempa@redhat.com>
Wed, 12 Oct 2016 08:14:20 +0000 (10:14 +0200)
Currently Libvirt allows attempts to migrate read only disks. Qemu
cannot handle this as read only disks cannot be written to on the
destination system. The end result is a cryptic error message and a
failed migration.

This patch causes migration to fail earlier and provides a meaningful
error message stating that migrating read only disks is not supported.

Signed-off-by: Corey S. McQuay <csmcquay@linux.vnet.ibm.com>
Reviewed-by: Jason J. Herne <jjherne@linux.vnet.ibm.com>
Reviewed-by: Boris Fiuczynski <fiuczy@linux.vnet.ibm.com>
src/qemu/qemu_migration.c

index e2ca3303efd3c2d126114b0a468f7c5d28353dcc..1e7abc53f5b037cc079cbd9b18fccfcf6e0e018e 100644 (file)
@@ -1765,6 +1765,12 @@ qemuMigrationStartNBDServer(virQEMUDriverPtr driver,
         if (!qemuMigrateDisk(disk, nmigrate_disks, migrate_disks))
             continue;
 
+        if (disk->src->readonly) {
+            virReportError(VIR_ERR_OPERATION_UNSUPPORTED,
+                           _("Cannot migrate read-only disk %s"), disk->dst);
+            goto cleanup;
+        }
+
         VIR_FREE(diskAlias);
         if (!(diskAlias = qemuAliasFromDisk(disk)))
             goto cleanup;