[dm-devel] [PATCH v2 06/20] libmultipath: sgio_get_vpd: add page argument
Martin Wilck
mwilck at suse.com
Sat Jan 13 21:19:24 UTC 2018
get_vpd_sgio() assumes to be able to send different VPD inquires.
This requires passing the pg argument to sgio_get_vpd().
---
libmultipath/discovery.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/libmultipath/discovery.c b/libmultipath/discovery.c
index c53d3aab897f..43631c46f21e 100644
--- a/libmultipath/discovery.c
+++ b/libmultipath/discovery.c
@@ -837,7 +837,7 @@ detect_alua(struct path * pp, struct config *conf)
#define DEFAULT_SGIO_LEN 254
static int
-sgio_get_vpd (unsigned char * buff, int maxlen, int fd)
+sgio_get_vpd (unsigned char * buff, int maxlen, int fd, int pg)
{
int len = DEFAULT_SGIO_LEN;
@@ -846,7 +846,7 @@ sgio_get_vpd (unsigned char * buff, int maxlen, int fd)
return -1;
}
retry:
- if (0 == do_inq(fd, 0, 1, 0x83, buff, len)) {
+ if (0 == do_inq(fd, 0, 1, pg, buff, len)) {
len = buff[3] + (buff[2] << 8);
if (len >= maxlen)
return len;
@@ -1099,7 +1099,7 @@ get_vpd_sgio (int fd, int pg, char * str, int maxlen)
unsigned char buff[4096];
memset(buff, 0x0, 4096);
- if (sgio_get_vpd(buff, 4096, fd) <= 0) {
+ if (sgio_get_vpd(buff, 4096, fd, pg) <= 0) {
condlog(3, "failed to issue vpd inquiry for pg%02x",
pg);
return -errno;
--
2.15.1
More information about the dm-devel
mailing list