]> xenbits.xensource.com Git - libvirt.git/commitdiff
lxc: Fix wrong error message on disk hotplug
authorPeter Krempa <pkrempa@redhat.com>
Mon, 2 May 2016 11:08:53 +0000 (13:08 +0200)
committerPeter Krempa <pkrempa@redhat.com>
Mon, 9 May 2016 10:44:52 +0000 (12:44 +0200)
Commit 36025c552 tried to improve error reporting for <disk type="lun">
but reused the code in LXC which doesn't care about the actual disk
type. The error messages would then contain a bogous hint that the
config for the 'lun' device is invalid which might not be the case.

Re-do the relevant portion of the commit with the original message.

src/lxc/lxc_driver.c

index 1dfbde33307335fcde32e276cc124b66c3981444..a2268504dd22a813bd5f84e632780e0398af6530 100644 (file)
@@ -4106,9 +4106,6 @@ lxcDomainAttachDeviceDiskLive(virLXCDriverPtr driver,
         goto cleanup;
     }
 
-    if (!virDomainDiskSourceIsBlockType(def->src, true))
-        goto cleanup;
-
     src = virDomainDiskGetSource(def);
     if (src == NULL) {
         virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
@@ -4116,6 +4113,12 @@ lxcDomainAttachDeviceDiskLive(virLXCDriverPtr driver,
         goto cleanup;
     }
 
+    if (!virStorageSourceIsBlockLocal(def->src)) {
+        virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+                       _("Can't setup disk for non-block device"));
+        goto cleanup;
+    }
+
     if (virDomainDiskIndexByName(vm->def, def->dst, true) >= 0) {
         virReportError(VIR_ERR_OPERATION_FAILED,
                        _("target %s already exists"), def->dst);