[PATCH] scsi/ibmvscsi: /sys/class/scsi_host/hostX/config doesn't show any information
olaf at aepfle.de
olaf at aepfle.de
Thu Jul 19 02:49:17 EST 2012
From: Linda Xie <lxiep at us.ibm.com>
Expected result:
It should show something like this:
x1521p4:~ # cat /sys/class/scsi_host/host1/config
PARTITIONNAME='x1521p4'
NWSDNAME='X1521P4'
HOSTNAME='X1521P4'
DOMAINNAME='RCHLAND.IBM.COM'
NAMESERVERS='9.10.244.100 9.10.244.200'
Actual result:
x1521p4:~ # cat /sys/class/scsi_host/host0/config
x1521p4:~ #
This patch changes the size of the buffer used for transfering config
data to 4K. It was tested against 2.6.19-rc2 tree.
Reported by IBM during SLES11 beta testing:
https://bugzilla.novell.com/show_bug.cgi?id=439970
LTC49349
Signed-off-by: Olaf Hering <olaf at aepfle.de>
diff --git a/drivers/scsi/ibmvscsi/ibmvscsi.c b/drivers/scsi/ibmvscsi/ibmvscsi.c
index e580aa4..1513ca8 100644
--- a/drivers/scsi/ibmvscsi/ibmvscsi.c
+++ b/drivers/scsi/ibmvscsi/ibmvscsi.c
@@ -93,6 +93,8 @@ static int max_requests = IBMVSCSI_MAX_REQUESTS_DEFAULT;
static int max_events = IBMVSCSI_MAX_REQUESTS_DEFAULT + 2;
static int fast_fail = 1;
static int client_reserve = 1;
+/* host data buffer size */
+#define HOST_BUFFER_SIZE 4096
static struct scsi_transport_template *ibmvscsi_transport_template;
@@ -1666,7 +1668,7 @@ static ssize_t show_host_srp_version(struct device *dev,
struct ibmvscsi_host_data *hostdata = shost_priv(shost);
int len;
- len = snprintf(buf, PAGE_SIZE, "%s\n",
+ len = snprintf(buf, HOST_BUFFER_SIZE, "%s\n",
hostdata->madapter_info.srp_version);
return len;
}
@@ -1687,7 +1689,7 @@ static ssize_t show_host_partition_name(struct device *dev,
struct ibmvscsi_host_data *hostdata = shost_priv(shost);
int len;
- len = snprintf(buf, PAGE_SIZE, "%s\n",
+ len = snprintf(buf, HOST_BUFFER_SIZE, "%s\n",
hostdata->madapter_info.partition_name);
return len;
}
@@ -1708,7 +1710,7 @@ static ssize_t show_host_partition_number(struct device *dev,
struct ibmvscsi_host_data *hostdata = shost_priv(shost);
int len;
- len = snprintf(buf, PAGE_SIZE, "%d\n",
+ len = snprintf(buf, HOST_BUFFER_SIZE, "%d\n",
hostdata->madapter_info.partition_number);
return len;
}
@@ -1728,7 +1730,7 @@ static ssize_t show_host_mad_version(struct device *dev,
struct ibmvscsi_host_data *hostdata = shost_priv(shost);
int len;
- len = snprintf(buf, PAGE_SIZE, "%d\n",
+ len = snprintf(buf, HOST_BUFFER_SIZE, "%d\n",
hostdata->madapter_info.mad_version);
return len;
}
@@ -1748,7 +1750,7 @@ static ssize_t show_host_os_type(struct device *dev,
struct ibmvscsi_host_data *hostdata = shost_priv(shost);
int len;
- len = snprintf(buf, PAGE_SIZE, "%d\n", hostdata->madapter_info.os_type);
+ len = snprintf(buf, HOST_BUFFER_SIZE, "%d\n", hostdata->madapter_info.os_type);
return len;
}
@@ -1767,7 +1769,7 @@ static ssize_t show_host_config(struct device *dev,
struct ibmvscsi_host_data *hostdata = shost_priv(shost);
/* returns null-terminated host config data */
- if (ibmvscsi_do_host_config(hostdata, buf, PAGE_SIZE) == 0)
+ if (ibmvscsi_do_host_config(hostdata, buf, HOST_BUFFER_SIZE) == 0)
return strlen(buf);
else
return 0;
--
1.7.10.4
More information about the Linuxppc-dev
mailing list