Blame SOURCES/0240-UPBZ-1568902-id_size.patch

6add9d
---
6add9d
 libmultipath/discovery.c |   12 ++++++------
6add9d
 libmultipath/structs.h   |   11 +++++++++--
6add9d
 2 files changed, 15 insertions(+), 8 deletions(-)
6add9d
6add9d
Index: multipath-tools-130222/libmultipath/discovery.c
6add9d
===================================================================
6add9d
--- multipath-tools-130222.orig/libmultipath/discovery.c
6add9d
+++ multipath-tools-130222/libmultipath/discovery.c
6add9d
@@ -845,12 +845,12 @@ scsi_sysfs_pathinfo (struct path * pp)
6add9d
 
6add9d
 	condlog(3, "%s: vendor = %s", pp->dev, pp->vendor_id);
6add9d
 
6add9d
-	if (sysfs_get_model(parent, pp->product_id, SCSI_PRODUCT_SIZE))
6add9d
+	if (sysfs_get_model(parent, pp->product_id, PATH_PRODUCT_SIZE))
6add9d
 		return 1;
6add9d
 
6add9d
 	condlog(3, "%s: product = %s", pp->dev, pp->product_id);
6add9d
 
6add9d
-	if (sysfs_get_rev(parent, pp->rev, SCSI_REV_SIZE))
6add9d
+	if (sysfs_get_rev(parent, pp->rev, PATH_REV_SIZE))
6add9d
 		return 1;
6add9d
 
6add9d
 	condlog(3, "%s: rev = %s", pp->dev, pp->rev);
6add9d
@@ -904,11 +904,11 @@ nvme_sysfs_pathinfo (struct path * pp)
6add9d
 		return 1;
6add9d
 
6add9d
 	snprintf(pp->vendor_id, SCSI_VENDOR_SIZE, "NVME");
6add9d
-	snprintf(pp->product_id, SCSI_PRODUCT_SIZE, "%s",
6add9d
+	snprintf(pp->product_id, PATH_PRODUCT_SIZE, "%s",
6add9d
 		 udev_device_get_sysattr_value(parent, "model"));
6add9d
 	snprintf(pp->serial, SERIAL_SIZE, "%s",
6add9d
 		 udev_device_get_sysattr_value(parent, "serial"));
6add9d
-	snprintf(pp->rev, SCSI_REV_SIZE, "%s",
6add9d
+	snprintf(pp->rev, PATH_REV_SIZE, "%s",
6add9d
 		 udev_device_get_sysattr_value(parent, "firmware_rev"));
6add9d
 
6add9d
 	condlog(3, "%s: vendor = %s", pp->dev, pp->vendor_id);
6add9d
@@ -1022,12 +1022,12 @@ cciss_sysfs_pathinfo (struct path * pp)
6add9d
 
6add9d
 	condlog(3, "%s: vendor = %s", pp->dev, pp->vendor_id);
6add9d
 
6add9d
-	if (sysfs_get_model(parent, pp->product_id, SCSI_PRODUCT_SIZE))
6add9d
+	if (sysfs_get_model(parent, pp->product_id, PATH_PRODUCT_SIZE))
6add9d
 		return 1;
6add9d
 
6add9d
 	condlog(3, "%s: product = %s", pp->dev, pp->product_id);
6add9d
 
6add9d
-	if (sysfs_get_rev(parent, pp->rev, SCSI_REV_SIZE))
6add9d
+	if (sysfs_get_rev(parent, pp->rev, PATH_REV_SIZE))
6add9d
 		return 1;
6add9d
 
6add9d
 	condlog(3, "%s: rev = %s", pp->dev, pp->rev);
6add9d
Index: multipath-tools-130222/libmultipath/structs.h
6add9d
===================================================================
6add9d
--- multipath-tools-130222.orig/libmultipath/structs.h
6add9d
+++ multipath-tools-130222/libmultipath/structs.h
6add9d
@@ -24,6 +24,13 @@
6add9d
 #define SCSI_PRODUCT_SIZE	17
6add9d
 #define SCSI_REV_SIZE		5
6add9d
 #define SCSI_STATE_SIZE		19
6add9d
+#define NVME_MODEL_SIZE		41
6add9d
+#define NVME_REV_SIZE		9
6add9d
+
6add9d
+/* This must be the maximum of SCSI and NVME sizes */
6add9d
+#define PATH_PRODUCT_SIZE NVME_MODEL_SIZE
6add9d
+#define PATH_REV_SIZE NVME_REV_SIZE
6add9d
+
6add9d
 
6add9d
 #define NO_PATH_RETRY_UNDEF	0
6add9d
 #define NO_PATH_RETRY_FAIL	-1
6add9d
@@ -212,8 +219,8 @@ struct path {
6add9d
 	struct hd_geometry geom;
6add9d
 	char wwid[WWID_SIZE];
6add9d
 	char vendor_id[SCSI_VENDOR_SIZE];
6add9d
-	char product_id[SCSI_PRODUCT_SIZE];
6add9d
-	char rev[SCSI_REV_SIZE];
6add9d
+	char product_id[PATH_PRODUCT_SIZE];
6add9d
+	char rev[PATH_REV_SIZE];
6add9d
 	char serial[SERIAL_SIZE];
6add9d
 	char tgt_node_name[NODE_NAME_SIZE];
6add9d
 	unsigned long long size;