Hi James, On Tue, 2017-06-13 at 11:19 -0500, James Shoemaker wrote: > I have a piece of hardware, a 16 bay storagetek optically > connected SAN to > be specific, that returns empty string for Device id. > > I did the following patch to resolve the issue, it basically > allows empty > string for vendor and product, I couldn't find anywhere that had an > issue with > it.. > > diff --git a/libmultipath/discovery.c b/libmultipath/discovery.c > index 663c8ea..92d0e49 100644 > --- a/libmultipath/discovery.c > +++ b/libmultipath/discovery.c > @@ -1149,12 +1149,12 @@ scsi_sysfs_pathinfo (struct path * pp, vector > hwtable) > if (!attr_path || pp->sg_id.host_no == -1) > return 1; > > - if (sysfs_get_vendor(parent, pp->vendor_id, SCSI_VENDOR_SIZE) > <= 0) > + if (sysfs_get_vendor(parent, pp->vendor_id, SCSI_VENDOR_SIZE) > < 0) > return 1; > > condlog(3, "%s: vendor = %s", pp->dev, pp->vendor_id); > > - if (sysfs_get_model(parent, pp->product_id, > SCSI_PRODUCT_SIZE) <= 0) > + if (sysfs_get_model(parent, pp->product_id, > SCSI_PRODUCT_SIZE) < 0) > return 1; > > condlog(3, "%s: product = %s", pp->dev, pp->product_id); In general, yes, I think this would work. vendor_id and product_id are primarily used to lookup parameters in the hwtable, and there we have no entries with empty vendor or product. One side issue that needs to be considered is printout, though: snprint_multipath_(vpr|prod|vend) will just print nothing if either vendor or product has zero length. It would be good if they'd print e.g. "<NOVNDR>" and "<NO PRODUCT>" instead. Regards Martin PS: Patch in plain text format would be appreciated. -- Dr. Martin Wilck <mwilck@xxxxxxxx>, Tel. +49 (0)911 74053 2107 SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton HRB 21284 (AG Nürnberg) -- dm-devel mailing list dm-devel@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/dm-devel