]> xenbits.xensource.com Git - libvirt.git/commitdiff
storage: mpath: Don't error on target_type=NULL
authorCole Robinson <crobinso@redhat.com>
Wed, 13 Apr 2016 21:29:59 +0000 (17:29 -0400)
committerCole Robinson <crobinso@redhat.com>
Thu, 14 Apr 2016 16:52:45 +0000 (12:52 -0400)
We use device-mapper to enumerate all dm devices, and filter out
the list of multipath devices by checking the target_type string
name. The code however cancels all scanning if we encounter
target_type=NULL

I don't know how to reproduce that situation, but a user was hitting
it in their setup, and inspecting the lvm2/device-mapper code shows
many places where !target_type is explicitly ignored and processing
continues on to the next device. So I think we should do the same

https://bugzilla.redhat.com/show_bug.cgi?id=1069317

src/storage/storage_backend_mpath.c

index b5b4bb6587132c09efda8cb35c758627cc33de77..bf1b1abe031464d759baa34d04949625315915d6 100644 (file)
@@ -114,12 +114,7 @@ virStorageBackendIsMultipath(const char *dev_name)
 
     dm_get_next_target(dmt, next, &start, &length, &target_type, &params);
 
-    if (target_type == NULL) {
-        ret = -1;
-        goto out;
-    }
-
-    if (STREQ(target_type, "multipath"))
+    if (STREQ_NULLABLE(target_type, "multipath"))
         ret = 1;
 
  out: