Currently processLU returns a 0 when either a 'non disk/lun' volume or
a processed and found disk/lun value.  On return we set *found = true
in either case.

If we don't find any "real" LU's that could be indicative of some other
problem that we may need to message. Therefore, only set the *found when
we've successfully processed a LU.

Signed-off-by: John Ferlan <jfer...@redhat.com>
---
 src/storage/storage_backend_scsi.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/storage/storage_backend_scsi.c 
b/src/storage/storage_backend_scsi.c
index 58e7e6d..2f1f5ed 100644
--- a/src/storage/storage_backend_scsi.c
+++ b/src/storage/storage_backend_scsi.c
@@ -412,7 +412,7 @@ processLU(virStoragePoolObjPtr pool,
                   host, bus, target, lun);
         goto out;
     }
-    retval = 0;
+    retval = 1;
 
     VIR_DEBUG("Created new storage volume for %u:%u:%u:%u successfully",
               host, bus, target, lun);
@@ -460,7 +460,7 @@ virStorageBackendSCSIFindLUsInternal(virStoragePoolObjPtr 
pool,
 
         VIR_DEBUG("Found possible LU '%s'", lun_dirent->d_name);
 
-        if (processLU(pool, scanhost, bus, target, lun) == 0)
+        if (processLU(pool, scanhost, bus, target, lun) == 1)
             *found = true;
     }
 
-- 
2.1.0

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

Reply via email to