Since the switch to VIR_STRDUP this function returns 1 on success, but the caller treats any non-zero value as failure. --- src/node_device/node_device_udev.c | 20 +++++++------------- 1 file changed, 7 insertions(+), 13 deletions(-) diff --git a/src/node_device/node_device_udev.c b/src/node_device/node_device_udev.c index 46e48df..4506ff8 100644 --- a/src/node_device/node_device_udev.c +++ b/src/node_device/node_device_udev.c @@ -940,28 +940,22 @@ static int udevProcessSD(struct udev_device *device, * storage device it is from other information that is provided. */ static int udevKludgeStorageType(virNodeDeviceDefPtr def) { - int ret = -1; - VIR_DEBUG("Could not find definitive storage type for device " "with sysfs path '%s', trying to guess it", def->sysfs_path); - if (STRPREFIX(def->caps->data.storage.block, "/dev/vd")) { - /* virtio disk */ - ret = VIR_STRDUP(def->caps->data.storage.drive_type, "disk"); - } - - if (ret != 0) { - VIR_DEBUG("Could not determine storage type for device " - "with sysfs path '%s'", def->sysfs_path); - } else { + /* virtio disk */ + if (STRPREFIX(def->caps->data.storage.block, "/dev/vd") && + VIR_STRDUP(def->caps->data.storage.drive_type, "disk") > 0) { VIR_DEBUG("Found storage type '%s' for device " "with sysfs path '%s'", def->caps->data.storage.drive_type, def->sysfs_path); + return 0; } - - return ret; + VIR_DEBUG("Could not determine storage type " + "for device with sysfs path '%s'", def->sysfs_path); + return -1; } -- 2.7.3 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list