* [PATCH 1/5] multipath-tools: delete no_path_retry attribute when it is equal to default value
@ 2016-07-23 0:29 Xose Vazquez Perez
2016-07-23 0:29 ` [PATCH 2/5] multipath-tools: Clarify template rules of hwtable Xose Vazquez Perez
` (3 more replies)
0 siblings, 4 replies; 12+ messages in thread
From: Xose Vazquez Perez @ 2016-07-23 0:29 UTC (permalink / raw)
Cc: device-mapper development, Xose Vazquez Perez
Defaul value is already 0 (NO_PATH_RETRY_UNDEF)
Cc: Christophe Varoqui <christophe.varoqui@opensvc.com>
Cc: device-mapper development <dm-devel@redhat.com>
Signed-off-by: Xose Vazquez Perez <xose.vazquez@gmail.com>
---
libmultipath/hwtable.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/libmultipath/hwtable.c b/libmultipath/hwtable.c
index a1fc3e8..8eec209 100644
--- a/libmultipath/hwtable.c
+++ b/libmultipath/hwtable.c
@@ -708,7 +708,6 @@ static struct hwentry default_hw[] = {
.selector = "queue-length 0",
.pgpolicy = MULTIBUS,
.fast_io_fail = 10,
- .no_path_retry = 0,
.dev_loss = 60,
},
{
--
2.7.4
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 2/5] multipath-tools: Clarify template rules of hwtable
2016-07-23 0:29 [PATCH 1/5] multipath-tools: delete no_path_retry attribute when it is equal to default value Xose Vazquez Perez
@ 2016-07-23 0:29 ` Xose Vazquez Perez
2016-07-23 0:29 ` [PATCH 3/5] multipath-tools: use parentheses() to cover a regex with pipe| Xose Vazquez Perez
` (2 subsequent siblings)
3 siblings, 0 replies; 12+ messages in thread
From: Xose Vazquez Perez @ 2016-07-23 0:29 UTC (permalink / raw)
Cc: device-mapper development, Xose Vazquez Perez
Cc: Christophe Varoqui <christophe.varoqui@opensvc.com>
Cc: device-mapper development <dm-devel@redhat.com>
Signed-off-by: Xose Vazquez Perez <xose.vazquez@gmail.com>
---
libmultipath/hwtable.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/libmultipath/hwtable.c b/libmultipath/hwtable.c
index 8eec209..6f9adc9 100644
--- a/libmultipath/hwtable.c
+++ b/libmultipath/hwtable.c
@@ -762,7 +762,8 @@ static struct hwentry default_hw[] = {
* Copy this TEMPLATE to add new hardware.
*
* Keep only mandatory and modified attributes.
- * Standard attributes must be removed.
+ * Attributes with default values must be removed.
+ * .vendor and .product are mandatory, all other are optional.
*
* COMPANY_NAME
*
@@ -770,8 +771,8 @@ static struct hwentry default_hw[] = {
* Mail : XXX
*/
{
- .vendor = "VENDOR", (Mandatory)
- .product = "PRODUCT", (Mandatory)
+ .vendor = "VENDOR",
+ .product = "PRODUCT",
.revision = "REVISION",
.bl_product = "BL_PRODUCT",
.pgpolicy = GROUP_BY_PRIO,
--
2.7.4
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 3/5] multipath-tools: use parentheses() to cover a regex with pipe|
2016-07-23 0:29 [PATCH 1/5] multipath-tools: delete no_path_retry attribute when it is equal to default value Xose Vazquez Perez
2016-07-23 0:29 ` [PATCH 2/5] multipath-tools: Clarify template rules of hwtable Xose Vazquez Perez
@ 2016-07-23 0:29 ` Xose Vazquez Perez
2016-07-23 0:29 ` [PATCH 4/5] multipath-tools: replace leading spaces with tabs II Xose Vazquez Perez
2016-07-23 0:29 ` [PATCH 5/5] multipath-tools: hwtable housekeeping Xose Vazquez Perez
3 siblings, 0 replies; 12+ messages in thread
From: Xose Vazquez Perez @ 2016-07-23 0:29 UTC (permalink / raw)
Cc: device-mapper development, Xose Vazquez Perez
Easier to read, and maintain consistency with the rest.
Cc: Christophe Varoqui <christophe.varoqui@opensvc.com>
Cc: device-mapper development <dm-devel@redhat.com>
Signed-off-by: Xose Vazquez Perez <xose.vazquez@gmail.com>
---
libmultipath/hwtable.c | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/libmultipath/hwtable.c b/libmultipath/hwtable.c
index 6f9adc9..44fc309 100644
--- a/libmultipath/hwtable.c
+++ b/libmultipath/hwtable.c
@@ -93,7 +93,7 @@ static struct hwentry default_hw[] = {
{
/* EVA 3000/5000 with new firmware, EVA 4000/6000/8000 */
.vendor = "(COMPAQ|HP)",
- .product = "HSV1[01]1|HSV2[01]0|HSV3[046]0|HSV4[05]0",
+ .product = "(HSV1[01]1|HSV2[01]0|HSV3[046]0|HSV4[05]0)",
.no_path_retry = 12,
.minio = 100,
.prio_name = PRIO_ALUA,
@@ -101,7 +101,7 @@ static struct hwentry default_hw[] = {
{
/* HP MSA2000 family with old firmware */
.vendor = "HP",
- .product = "MSA2[02]12fc|MSA2012i",
+ .product = "(MSA2[02]12fc|MSA2012i)",
.pgpolicy = MULTIBUS,
.no_path_retry = 18,
.minio = 100,
@@ -109,7 +109,7 @@ static struct hwentry default_hw[] = {
{
/* HP MSA2000 family with new firmware */
.vendor = "HP",
- .product = "MSA2012sa|MSA23(12|24)(fc|i|sa)|MSA2000s VOLUME",
+ .product = "(MSA2012sa|MSA23(12|24)(fc|i|sa)|MSA2000s VOLUME)",
.no_path_retry = 18,
.minio = 100,
.prio_name = PRIO_ALUA,
@@ -142,7 +142,7 @@ static struct hwentry default_hw[] = {
{
/* HP P2000 family */
.vendor = "HP",
- .product = "P2000 G3 FC|P2000G3 FC/iSCSI|P2000 G3 SAS|P2000 G3 iSCSI",
+ .product = "(P2000 G3 FC|P2000G3 FC/iSCSI|P2000 G3 SAS|P2000 G3 iSCSI)",
.no_path_retry = 18,
.minio = 100,
.prio_name = PRIO_ALUA,
@@ -172,7 +172,7 @@ static struct hwentry default_hw[] = {
{
/* DGC CLARiiON CX/AX and EMC VNX */
.vendor = "^DGC",
- .product = "^RAID|^DISK|^VRAID",
+ .product = "^(RAID|DISK|VRAID)",
.bl_product = "LUNZ",
.features = "1 queue_if_no_path",
.hwhandler = "1 emc",
@@ -286,7 +286,7 @@ static struct hwentry default_hw[] = {
},
{
.vendor = "IBM",
- .product = "^1745|^1746",
+ .product = "^(1745|1746)",
.bl_product = "Universal Xport",
.features = "2 pg_init_retries 50",
.hwhandler = "1 rdac",
@@ -469,7 +469,7 @@ static struct hwentry default_hw[] = {
{
/* DELL MD32xx/MD36xx */
.vendor = "DELL",
- .product = "MD32xx|MD36xx",
+ .product = "(MD32xx|MD36xx)",
.bl_product = "Universal Xport",
.features = "2 pg_init_retries 50",
.hwhandler = "1 rdac",
@@ -480,7 +480,7 @@ static struct hwentry default_hw[] = {
{
/* DELL MD34xx/MD38xx */
.vendor = "DELL",
- .product = "MD34xx|MD38xx",
+ .product = "(MD34xx|MD38xx)",
.bl_product = "Universal Xport",
.features = "2 pg_init_retries 50",
.hwhandler = "1 rdac",
@@ -748,7 +748,7 @@ static struct hwentry default_hw[] = {
*/
{
.vendor = "TEGILE",
- .product = "ZEBI-(FC|ISCSI)|INTELLIFLASH",
+ .product = "(ZEBI-(FC|ISCSI)|INTELLIFLASH)",
.hwhandler = "1 alua",
.selector = "round-robin 0",
.no_path_retry = 10,
--
2.7.4
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 4/5] multipath-tools: replace leading spaces with tabs II
2016-07-23 0:29 [PATCH 1/5] multipath-tools: delete no_path_retry attribute when it is equal to default value Xose Vazquez Perez
2016-07-23 0:29 ` [PATCH 2/5] multipath-tools: Clarify template rules of hwtable Xose Vazquez Perez
2016-07-23 0:29 ` [PATCH 3/5] multipath-tools: use parentheses() to cover a regex with pipe| Xose Vazquez Perez
@ 2016-07-23 0:29 ` Xose Vazquez Perez
2016-07-23 0:29 ` [PATCH 5/5] multipath-tools: hwtable housekeeping Xose Vazquez Perez
3 siblings, 0 replies; 12+ messages in thread
From: Xose Vazquez Perez @ 2016-07-23 0:29 UTC (permalink / raw)
Cc: device-mapper development, Xose Vazquez Perez
Mainly replace less than 8 ^spaces with tabs where is required and remove
^space from goto labels.
Cc: Christophe Varoqui <christophe.varoqui@opensvc.com>
Cc: device-mapper development <dm-devel@redhat.com>
Signed-off-by: Xose Vazquez Perez <xose.vazquez@gmail.com>
---
kpartx/Makefile | 2 +-
kpartx/dasd.c | 2 +-
kpartx/gpt.c | 2 +-
kpartx/kpartx.rules | 2 +-
libmpathpersist/mpath_pr_ioctl.h | 96 +++++++++++++++++-----------------
libmultipath/Makefile | 12 ++---
libmultipath/checkers.c | 20 +++----
libmultipath/checkers/cciss.h | 106 +++++++++++++++++++-------------------
libmultipath/checkers/tur.c | 2 +-
libmultipath/devmapper.h | 6 +--
libmultipath/prioritizers/hp_sw.c | 2 +-
libmultipath/prioritizers/ontap.c | 8 +--
libmultipath/structs.h | 8 +--
multipathd/main.h | 12 ++---
14 files changed, 140 insertions(+), 140 deletions(-)
diff --git a/kpartx/Makefile b/kpartx/Makefile
index 5476545..70f836e 100644
--- a/kpartx/Makefile
+++ b/kpartx/Makefile
@@ -14,7 +14,7 @@ endif
LDFLAGS = -ldevmapper
OBJS = bsd.o dos.o kpartx.o solaris.o unixware.o dasd.o sun.o \
- gpt.o mac.o ps3.o crc32.o lopart.o xstrncpy.o devmapper.o
+ gpt.o mac.o ps3.o crc32.o lopart.o xstrncpy.o devmapper.o
EXEC = kpartx
all: $(EXEC)
diff --git a/kpartx/dasd.c b/kpartx/dasd.c
index 046a08b..0cd2002 100644
--- a/kpartx/dasd.c
+++ b/kpartx/dasd.c
@@ -280,7 +280,7 @@ read_dasd_pt(int fd, struct slice all, struct slice *sp, int ns)
retval = 1;
}
- out:
+out:
if (data != NULL)
free(data);
if (fd_dasd != -1 && fd_dasd != fd)
diff --git a/kpartx/gpt.c b/kpartx/gpt.c
index 75a1c2b..3511886 100644
--- a/kpartx/gpt.c
+++ b/kpartx/gpt.c
@@ -592,7 +592,7 @@ find_valid_gpt(int fd, gpt_header ** gpt, gpt_entry ** ptes)
return 1;
}
- fail:
+fail:
if (pgpt) { free(pgpt); pgpt=NULL; }
if (agpt) { free(agpt); agpt=NULL; }
if (pptes) { free(pptes); pptes=NULL; }
diff --git a/kpartx/kpartx.rules b/kpartx/kpartx.rules
index 8858a60..1713f3c 100644
--- a/kpartx/kpartx.rules
+++ b/kpartx/kpartx.rules
@@ -38,6 +38,6 @@ ENV{ID_FS_USAGE}=="filesystem|other", ENV{ID_FS_LABEL_ENC}=="?*", \
ENV{DM_ACTION}=="PATH_FAILED|PATH_REINSTATED", GOTO="kpartx_end"
ENV{DM_NR_VALID_PATHS}=="0", GOTO="kpartx_end"
ENV{DM_STATE}!="SUSPENDED", ENV{DM_UUID}=="mpath-*", \
- RUN+="/sbin/kpartx -u -p -part /dev/$name"
+ RUN+="/sbin/kpartx -u -p -part /dev/$name"
LABEL="kpartx_end"
diff --git a/libmpathpersist/mpath_pr_ioctl.h b/libmpathpersist/mpath_pr_ioctl.h
index 7dfda5a..625490f 100644
--- a/libmpathpersist/mpath_pr_ioctl.h
+++ b/libmpathpersist/mpath_pr_ioctl.h
@@ -5,17 +5,17 @@
#if 0
static const char * pr_type_strs[] = {
- "obsolete [0]",
- "Write Exclusive",
- "obsolete [2]",
- "Exclusive Access",
- "obsolete [4]",
- "Write Exclusive, registrants only",
- "Exclusive Access, registrants only",
- "Write Exclusive, all registrants",
- "Exclusive Access, all registrants",
- "obsolete [9]", "obsolete [0xa]", "obsolete [0xb]", "obsolete [0xc]",
- "obsolete [0xd]", "obsolete [0xe]", "obsolete [0xf]",
+ "obsolete [0]",
+ "Write Exclusive",
+ "obsolete [2]",
+ "Exclusive Access",
+ "obsolete [4]",
+ "Write Exclusive, registrants only",
+ "Exclusive Access, registrants only",
+ "Write Exclusive, all registrants",
+ "Exclusive Access, all registrants",
+ "obsolete [9]", "obsolete [0xa]", "obsolete [0xb]", "obsolete [0xc]",
+ "obsolete [0xd]", "obsolete [0xe]", "obsolete [0xf]",
};
#endif
@@ -24,43 +24,43 @@ typedef unsigned char BYTE; /* unsigned numeric, bit patterns */
typedef struct SenseData
{
- BYTE Error_Code;
- BYTE Segment_Number; /* not applicable to DAC */
- BYTE Sense_Key;
- BYTE Information[ 4 ];
- BYTE Additional_Len;
- LWORD Command_Specific_Info;
- BYTE ASC;
- BYTE ASCQ;
- BYTE Field_Replaceable_Unit;
- BYTE Sense_Key_Specific_Info[ 3 ];
- BYTE Recovery_Action[ 2 ];
- BYTE Total_Errors;
- BYTE Total_Retries;
- BYTE ASC_Stack_1;
- BYTE ASCQ_Stack_1;
- BYTE ASC_Stack_2;
- BYTE ASCQ_Stack_2;
- BYTE Additional_FRU_Info[ 8 ];
- BYTE Error_Specific_Info[ 3 ];
- BYTE Error_Detection_Point[ 4 ];
- BYTE Original_CDB[10];
- BYTE Host_ID;
- BYTE Host_Descriptor[ 2 ];
- BYTE Serial_Number[ 16 ];
- BYTE Array_SW_Revision[ 4 ];
- BYTE Data_Xfer_Operation;
- BYTE LUN_Number;
- BYTE LUN_Status;
- BYTE Drive_ID;
- BYTE Xfer_Start_Drive_ID;
- BYTE Drive_SW_Revision[ 4 ];
- BYTE Drive_Product_ID[ 16 ];
- BYTE PowerUp_Status[ 2 ];
- BYTE RAID_Level;
- BYTE Drive_Sense_ID[ 2 ];
- BYTE Drive_Sense_Data[ 32 ];
- BYTE Reserved2[24];
+ BYTE Error_Code;
+ BYTE Segment_Number; /* not applicable to DAC */
+ BYTE Sense_Key;
+ BYTE Information[ 4 ];
+ BYTE Additional_Len;
+ LWORD Command_Specific_Info;
+ BYTE ASC;
+ BYTE ASCQ;
+ BYTE Field_Replaceable_Unit;
+ BYTE Sense_Key_Specific_Info[ 3 ];
+ BYTE Recovery_Action[ 2 ];
+ BYTE Total_Errors;
+ BYTE Total_Retries;
+ BYTE ASC_Stack_1;
+ BYTE ASCQ_Stack_1;
+ BYTE ASC_Stack_2;
+ BYTE ASCQ_Stack_2;
+ BYTE Additional_FRU_Info[ 8 ];
+ BYTE Error_Specific_Info[ 3 ];
+ BYTE Error_Detection_Point[ 4 ];
+ BYTE Original_CDB[10];
+ BYTE Host_ID;
+ BYTE Host_Descriptor[ 2 ];
+ BYTE Serial_Number[ 16 ];
+ BYTE Array_SW_Revision[ 4 ];
+ BYTE Data_Xfer_Operation;
+ BYTE LUN_Number;
+ BYTE LUN_Status;
+ BYTE Drive_ID;
+ BYTE Xfer_Start_Drive_ID;
+ BYTE Drive_SW_Revision[ 4 ];
+ BYTE Drive_Product_ID[ 16 ];
+ BYTE PowerUp_Status[ 2 ];
+ BYTE RAID_Level;
+ BYTE Drive_Sense_ID[ 2 ];
+ BYTE Drive_Sense_Data[ 32 ];
+ BYTE Reserved2[24];
} SenseData_t;
#define MPATH_PRIN_CMD 0x5e
diff --git a/libmultipath/Makefile b/libmultipath/Makefile
index a14d4b3..e44397b 100644
--- a/libmultipath/Makefile
+++ b/libmultipath/Makefile
@@ -18,12 +18,12 @@ ifdef SYSTEMD
endif
OBJS = memory.o parser.o vector.o devmapper.o callout.o \
- hwtable.o blacklist.o util.o dmparser.o config.o \
- structs.o discovery.o propsel.o dict.o \
- pgpolicies.o debug.o defaults.o uevent.o \
- switchgroup.o uxsock.o print.o alias.o log_pthread.o \
- log.o configure.o structs_vec.o sysfs.o prio.o checkers.o \
- lock.o waiter.o file.o wwids.o prioritizers/alua_rtpg.o
+ hwtable.o blacklist.o util.o dmparser.o config.o \
+ structs.o discovery.o propsel.o dict.o \
+ pgpolicies.o debug.o defaults.o uevent.o \
+ switchgroup.o uxsock.o print.o alias.o log_pthread.o \
+ log.o configure.o structs_vec.o sysfs.o prio.o checkers.o \
+ lock.o waiter.o file.o wwids.o prioritizers/alua_rtpg.o
LIBDM_API_FLUSH = $(shell grep -Ecs '^[a-z]*[[:space:]]+dm_task_no_flush' /usr/include/libdevmapper.h)
diff --git a/libmultipath/checkers.c b/libmultipath/checkers.c
index ad7d96c..42baa86 100644
--- a/libmultipath/checkers.c
+++ b/libmultipath/checkers.c
@@ -9,16 +9,16 @@
#include "vector.h"
char *checker_state_names[] = {
- "wild",
- "unchecked",
- "down",
- "up",
- "shaky",
- "ghost",
- "pending",
- "timeout",
- "removed",
- "delayed",
+ "wild",
+ "unchecked",
+ "down",
+ "up",
+ "shaky",
+ "ghost",
+ "pending",
+ "timeout",
+ "removed",
+ "delayed",
};
static LIST_HEAD(checkers);
diff --git a/libmultipath/checkers/cciss.h b/libmultipath/checkers/cciss.h
index c9fa84a..cf20946 100644
--- a/libmultipath/checkers/cciss.h
+++ b/libmultipath/checkers/cciss.h
@@ -43,76 +43,76 @@
//Command List Structure
typedef union _SCSI3Addr_struct {
- struct {
- BYTE Dev;
- BYTE Bus:6;
- BYTE Mode:2; // b00
- } PeripDev;
- struct {
- BYTE DevLSB;
- BYTE DevMSB:6;
- BYTE Mode:2; // b01
- } LogDev;
- struct {
- BYTE Dev:5;
- BYTE Bus:3;
- BYTE Targ:6;
- BYTE Mode:2; // b10
- } LogUnit;
+ struct {
+ BYTE Dev;
+ BYTE Bus:6;
+ BYTE Mode:2; // b00
+ } PeripDev;
+ struct {
+ BYTE DevLSB;
+ BYTE DevMSB:6;
+ BYTE Mode:2; // b01
+ } LogDev;
+ struct {
+ BYTE Dev:5;
+ BYTE Bus:3;
+ BYTE Targ:6;
+ BYTE Mode:2; // b10
+ } LogUnit;
} SCSI3Addr_struct;
typedef struct _PhysDevAddr_struct {
- DWORD TargetId:24;
- DWORD Bus:6;
- DWORD Mode:2;
- SCSI3Addr_struct Target[2]; //2 level target device addr
+ DWORD TargetId:24;
+ DWORD Bus:6;
+ DWORD Mode:2;
+ SCSI3Addr_struct Target[2]; //2 level target device addr
} PhysDevAddr_struct;
typedef struct _LogDevAddr_struct {
- DWORD VolId:30;
- DWORD Mode:2;
- BYTE reserved[4];
+ DWORD VolId:30;
+ DWORD Mode:2;
+ BYTE reserved[4];
} LogDevAddr_struct;
typedef union _LUNAddr_struct {
- BYTE LunAddrBytes[8];
- SCSI3Addr_struct SCSI3Lun[4];
- PhysDevAddr_struct PhysDev;
- LogDevAddr_struct LogDev;
+ BYTE LunAddrBytes[8];
+ SCSI3Addr_struct SCSI3Lun[4];
+ PhysDevAddr_struct PhysDev;
+ LogDevAddr_struct LogDev;
} LUNAddr_struct;
typedef struct _RequestBlock_struct {
- BYTE CDBLen;
- struct {
- BYTE Type:3;
- BYTE Attribute:3;
- BYTE Direction:2;
- } Type;
- HWORD Timeout;
- BYTE CDB[16];
+ BYTE CDBLen;
+ struct {
+ BYTE Type:3;
+ BYTE Attribute:3;
+ BYTE Direction:2;
+ } Type;
+ HWORD Timeout;
+ BYTE CDB[16];
} RequestBlock_struct;
typedef union _MoreErrInfo_struct{
- struct {
- BYTE Reserved[3];
- BYTE Type;
- DWORD ErrorInfo;
- }Common_Info;
- struct{
- BYTE Reserved[2];
- BYTE offense_size;//size of offending entry
- BYTE offense_num; //byte # of offense 0-base
- DWORD offense_value;
- }Invalid_Cmd;
-}MoreErrInfo_struct;
+ struct {
+ BYTE Reserved[3];
+ BYTE Type;
+ DWORD ErrorInfo;
+ } Common_Info;
+ struct{
+ BYTE Reserved[2];
+ BYTE offense_size;//size of offending entry
+ BYTE offense_num; //byte # of offense 0-base
+ DWORD offense_value;
+ } Invalid_Cmd;
+} MoreErrInfo_struct;
typedef struct _ErrorInfo_struct {
- BYTE ScsiStatus;
- BYTE SenseLen;
- HWORD CommandStatus;
- DWORD ResidualCnt;
- MoreErrInfo_struct MoreErrInfo;
- BYTE SenseInfo[SENSEINFOBYTES];
+ BYTE ScsiStatus;
+ BYTE SenseLen;
+ HWORD CommandStatus;
+ DWORD ResidualCnt;
+ MoreErrInfo_struct MoreErrInfo;
+ BYTE SenseInfo[SENSEINFOBYTES];
} ErrorInfo_struct;
#pragma pack()
diff --git a/libmultipath/checkers/tur.c b/libmultipath/checkers/tur.c
index 2edc8ad..c4ef8a8 100644
--- a/libmultipath/checkers/tur.c
+++ b/libmultipath/checkers/tur.c
@@ -107,7 +107,7 @@ tur_check(int fd, unsigned int timeout, char *msg)
unsigned char sense_buffer[32];
int retry_tur = 5;
- retry:
+retry:
memset(&io_hdr, 0, sizeof (struct sg_io_hdr));
memset(&sense_buffer, 0, 32);
io_hdr.interface_id = 'S';
diff --git a/libmultipath/devmapper.h b/libmultipath/devmapper.h
index 4bc3b11..442d42e 100644
--- a/libmultipath/devmapper.h
+++ b/libmultipath/devmapper.h
@@ -52,9 +52,9 @@ int dm_reassign_table(const char *name, char *old, char *new);
int dm_setgeometry(struct multipath *mpp);
#define VERSION_GE(v, minv) ( \
- (v[0] > minv[0]) || \
- ((v[0] == minv[0]) && (v[1] > minv[1])) || \
- ((v[0] == minv[0]) && (v[1] == minv[1]) && (v[2] >= minv[2])) \
+ (v[0] > minv[0]) || \
+ ((v[0] == minv[0]) && (v[1] > minv[1])) || \
+ ((v[0] == minv[0]) && (v[1] == minv[1]) && (v[2] >= minv[2])) \
)
#endif /* _DEVMAPPER_H */
diff --git a/libmultipath/prioritizers/hp_sw.c b/libmultipath/prioritizers/hp_sw.c
index 253fd51..6b0ed39 100644
--- a/libmultipath/prioritizers/hp_sw.c
+++ b/libmultipath/prioritizers/hp_sw.c
@@ -48,7 +48,7 @@ int hp_sw_prio(const char *dev, int fd, unsigned int timeout)
io_hdr.sbp = sb;
io_hdr.timeout = get_prio_timeout(timeout, 60000);
io_hdr.pack_id = 0;
- retry:
+retry:
if (ioctl(fd, SG_IO, &io_hdr) < 0) {
pp_hp_sw_log(0, "sending tur command failed");
goto out;
diff --git a/libmultipath/prioritizers/ontap.c b/libmultipath/prioritizers/ontap.c
index 747dfb5..4084c65 100644
--- a/libmultipath/prioritizers/ontap.c
+++ b/libmultipath/prioritizers/ontap.c
@@ -113,7 +113,7 @@ static int send_gva(const char *dev, int fd, unsigned char pg,
goto out;
}
ret = 0;
- out:
+out:
return(ret);
}
@@ -171,7 +171,7 @@ static int get_proxy(const char *dev, int fd, unsigned int timeout)
}
ret = (results[19] & 0x02) >> 1;
- out:
+out:
return(ret);
}
@@ -221,13 +221,13 @@ static int ontap_prio(const char *dev, int fd, unsigned int timeout)
return 0;
}
- try_fcp_proxy:
+try_fcp_proxy:
rc = get_proxy(dev, fd, timeout);
if (rc >= 0) {
is_proxy = rc;
}
- prio_select:
+prio_select:
if (is_iscsi_hardware) {
return 3;
} else if (is_iscsi_software) {
diff --git a/libmultipath/structs.h b/libmultipath/structs.h
index 9f216df..a87cda6 100644
--- a/libmultipath/structs.h
+++ b/libmultipath/structs.h
@@ -167,10 +167,10 @@ struct sg_id {
# define HDIO_GETGEO 0x0301 /* get device geometry */
struct hd_geometry {
- unsigned char heads;
- unsigned char sectors;
- unsigned short cylinders;
- unsigned long start;
+ unsigned char heads;
+ unsigned char sectors;
+ unsigned short cylinders;
+ unsigned long start;
};
#endif
diff --git a/multipathd/main.h b/multipathd/main.h
index 10b3a6d..f72580d 100644
--- a/multipathd/main.h
+++ b/multipathd/main.h
@@ -4,12 +4,12 @@
#define MAPGCINT 5
enum daemon_status {
- DAEMON_INIT,
- DAEMON_START,
- DAEMON_CONFIGURE,
- DAEMON_IDLE,
- DAEMON_RUNNING,
- DAEMON_SHUTDOWN,
+ DAEMON_INIT,
+ DAEMON_START,
+ DAEMON_CONFIGURE,
+ DAEMON_IDLE,
+ DAEMON_RUNNING,
+ DAEMON_SHUTDOWN,
};
struct prout_param_descriptor;
--
2.7.4
^ permalink raw reply related [flat|nested] 12+ messages in thread
* [PATCH 5/5] multipath-tools: hwtable housekeeping
2016-07-23 0:29 [PATCH 1/5] multipath-tools: delete no_path_retry attribute when it is equal to default value Xose Vazquez Perez
` (2 preceding siblings ...)
2016-07-23 0:29 ` [PATCH 4/5] multipath-tools: replace leading spaces with tabs II Xose Vazquez Perez
@ 2016-07-23 0:29 ` Xose Vazquez Perez
2016-07-31 8:55 ` Christophe Varoqui
3 siblings, 1 reply; 12+ messages in thread
From: Xose Vazquez Perez @ 2016-07-23 0:29 UTC (permalink / raw)
Cc: device-mapper development, Xose Vazquez Perez
Mainly: arrange some families, clean redundant labels, detail IBM devices,
add remaining attributes to last member(NULL) and add missing vendor labels.
Cc: Christophe Varoqui <christophe.varoqui@opensvc.com>
Cc: device-mapper development <dm-devel@redhat.com>
Signed-off-by: Xose Vazquez Perez <xose.vazquez@gmail.com>
---
libmultipath/hwtable.c | 299 +++++++++++++++++++++++++++----------------------
1 file changed, 162 insertions(+), 137 deletions(-)
diff --git a/libmultipath/hwtable.c b/libmultipath/hwtable.c
index 44fc309..1efaeee 100644
--- a/libmultipath/hwtable.c
+++ b/libmultipath/hwtable.c
@@ -25,15 +25,6 @@
*/
static struct hwentry default_hw[] = {
/*
- * Compellent Technologies/DELL
- */
- {
- .vendor = "COMPELNT",
- .product = "Compellent Vol",
- .pgpolicy = MULTIBUS,
- .no_path_retry = NO_PATH_RETRY_QUEUE,
- },
- /*
* Apple
*
* Maintainer : Shyam Sundar
@@ -46,7 +37,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
},
/*
- * StorageWorks/HPE
+ * HPE
*/
{
.vendor = "3PARdata",
@@ -99,7 +90,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_ALUA,
},
{
- /* HP MSA2000 family with old firmware */
+ /* MSA2000 family with old firmware */
.vendor = "HP",
.product = "(MSA2[02]12fc|MSA2012i)",
.pgpolicy = MULTIBUS,
@@ -107,7 +98,7 @@ static struct hwentry default_hw[] = {
.minio = 100,
},
{
- /* HP MSA2000 family with new firmware */
+ /* MSA2000 family with new firmware */
.vendor = "HP",
.product = "(MSA2012sa|MSA23(12|24)(fc|i|sa)|MSA2000s VOLUME)",
.no_path_retry = 18,
@@ -115,7 +106,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_ALUA,
},
{
- /* HP MSA 1040/2040 family */
+ /* MSA 1040/2040 family */
.vendor = "HP",
.product = "MSA (1|2)040 SA(N|S)",
.no_path_retry = 18,
@@ -123,7 +114,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_ALUA,
},
{
- /* HP SVSP */
+ /* SVSP */
.vendor = "HP",
.product = "HSVX700",
.hwhandler = "1 alua",
@@ -132,7 +123,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_ALUA,
},
{
- /* HP Smart Array */
+ /* Smart Array */
.vendor = "HP",
.product = "LOGICAL VOLUME.*",
.pgpolicy = MULTIBUS,
@@ -140,7 +131,7 @@ static struct hwentry default_hw[] = {
.no_path_retry = 12,
},
{
- /* HP P2000 family */
+ /* P2000 family */
.vendor = "HP",
.product = "(P2000 G3 FC|P2000G3 FC/iSCSI|P2000 G3 SAS|P2000 G3 iSCSI)",
.no_path_retry = 18,
@@ -148,7 +139,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_ALUA,
},
/*
- * DDN
+ * DataDirect Networks
*/
{
.vendor = "DDN",
@@ -196,6 +187,49 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
},
/*
+ * DELL
+ */
+ {
+ /* Compellent family */
+ .vendor = "COMPELNT",
+ .product = "Compellent Vol",
+ .pgpolicy = MULTIBUS,
+ .no_path_retry = NO_PATH_RETRY_QUEUE,
+ },
+ {
+ /* MD3000 */
+ .vendor = "DELL",
+ .product = "MD3000",
+ .bl_product = "Universal Xport",
+ .features = "2 pg_init_retries 50",
+ .hwhandler = "1 rdac",
+ .no_path_retry = 15,
+ .checker_name = RDAC,
+ .prio_name = PRIO_RDAC,
+ },
+ {
+ /* MD32xx/MD36xx */
+ .vendor = "DELL",
+ .product = "(MD32xx|MD36xx)",
+ .bl_product = "Universal Xport",
+ .features = "2 pg_init_retries 50",
+ .hwhandler = "1 rdac",
+ .no_path_retry = 15,
+ .checker_name = RDAC,
+ .prio_name = PRIO_RDAC,
+ },
+ {
+ /* MD34xx/MD38xx */
+ .vendor = "DELL",
+ .product = "(MD34xx|MD38xx)",
+ .bl_product = "Universal Xport",
+ .features = "2 pg_init_retries 50",
+ .hwhandler = "1 rdac",
+ .no_path_retry = 15,
+ .checker_name = RDAC,
+ .prio_name = PRIO_RDAC,
+ },
+ /*
* Fujitsu
*/
{
@@ -211,6 +245,12 @@ static struct hwentry default_hw[] = {
.no_path_retry = 10,
.prio_name = PRIO_ALUA,
},
+ /* FibreCAT S80 */
+ {
+ .vendor = "EUROLOGC",
+ .product = "FC2502",
+ .pgfailback = FAILBACK_UNDEF,
+ },
/*
* Hitachi
*
@@ -242,7 +282,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
},
{
- /* IBM FAStT 1722-600 */
+ /* DS4300 / FAStT600 */
.vendor = "IBM",
.product = "^1722-600",
.bl_product = "Universal Xport",
@@ -253,7 +293,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_RDAC,
},
{
- /* IBM DS4100 */
+ /* DS4100 / FAStT100 */
.vendor = "IBM",
.product = "^1724",
.bl_product = "Universal Xport",
@@ -264,7 +304,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_RDAC,
},
{
- /* IBM DS3200 / DS3300 / DS3400 */
+ /* DS3200 / DS3300 / DS3400 / Boot DS */
.vendor = "IBM",
.product = "^1726",
.bl_product = "Universal Xport",
@@ -275,7 +315,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_RDAC,
},
{
- /* IBM DS4400 / DS4500 / FAStT700 */
+ /* DS4400 / DS4500 / FAStT700 / FAStT900 */
.vendor = "IBM",
.product = "^1742",
.bl_product = "Universal Xport",
@@ -285,6 +325,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_RDAC,
},
{
+ /* DS3500 / DS3512 / DS3524 */
.vendor = "IBM",
.product = "^(1745|1746)",
.bl_product = "Universal Xport",
@@ -295,7 +336,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_RDAC,
},
{
- /* IBM DS4700 */
+ /* DS3950 / DS4200 / DS4700 / DS5020 */
.vendor = "IBM",
.product = "^1814",
.bl_product = "Universal Xport",
@@ -305,7 +346,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_RDAC,
},
{
- /* IBM DS4800 */
+ /* DS4800 */
.vendor = "IBM",
.product = "^1815",
.bl_product = "Universal Xport",
@@ -315,7 +356,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_RDAC,
},
{
- /* IBM DS5000 */
+ /* DS5000 / DS5100 / DS5300 / DCS3700 */
.vendor = "IBM",
.product = "^1818",
.bl_product = "Universal Xport",
@@ -325,7 +366,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_RDAC,
},
{
- /* IBM Netfinity Fibre Channel RAID Controller Unit */
+ /* Netfinity Fibre Channel RAID Controller Unit */
.vendor = "IBM",
.product = "^3526",
.bl_product = "Universal Xport",
@@ -335,14 +376,14 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_RDAC,
},
{
- /* IBM DS4200 / FAStT200 */
+ /* DS4200 / FAStT200 */
.vendor = "IBM",
.product = "^3542",
.pgpolicy = GROUP_BY_SERIAL,
.pgfailback = FAILBACK_UNDEF,
},
{
- /* IBM ESS F20 aka Shark */
+ /* Enterprise Storage Server / Shark 800 */
.vendor = "IBM",
.product = "^2105800",
.features = "1 queue_if_no_path",
@@ -350,7 +391,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
},
{
- /* IBM ESS F20 aka Shark */
+ /* Enterprise Storage Server / Shark F20 */
.vendor = "IBM",
.product = "^2105F20",
.features = "1 queue_if_no_path",
@@ -358,14 +399,14 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
},
{
- /* IBM DS6000 */
+ /* DS6000 */
.vendor = "IBM",
.product = "^1750500",
.features = "1 queue_if_no_path",
.prio_name = PRIO_ALUA,
},
{
- /* IBM DS8000 */
+ /* DS8000 */
.vendor = "IBM",
.product = "^2107900",
.features = "1 queue_if_no_path",
@@ -373,14 +414,14 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
},
{
- /* IBM SAN Volume Controller */
+ /* SAN Volume Controller / Storwize */
.vendor = "IBM",
.product = "^2145",
.features = "1 queue_if_no_path",
.prio_name = PRIO_ALUA,
},
{
- /* IBM S/390 ECKD DASD */
+ /* S/390 ECKD DASD */
.vendor = "IBM",
.product = "S/390 DASD ECKD",
.bl_product = "S/390.*",
@@ -390,7 +431,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
},
{
- /* IBM S/390 FBA DASD */
+ /* S/390 FBA DASD */
.vendor = "IBM",
.product = "S/390 DASD FBA",
.bl_product = "S/390.*",
@@ -400,7 +441,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
},
{
- /* IBM IPR */
+ /* Power RAID (IPR) */
.vendor = "IBM",
.product = "^IPR.*",
.features = "1 queue_if_no_path",
@@ -408,7 +449,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_ALUA,
},
{
- /* IBM RSSM */
+ /* SAS RAID Controller Module (RSSM) */
.vendor = "IBM",
.product = "1820N00",
.no_path_retry = NO_PATH_RETRY_QUEUE,
@@ -416,7 +457,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_ALUA,
},
{
- /* IBM XIV Storage System */
+ /* XIV Storage System */
.vendor = "IBM",
.product = "2810XIV",
.features = "1 queue_if_no_path",
@@ -438,7 +479,7 @@ static struct hwentry default_hw[] = {
.no_path_retry = (300 / DEFAULT_CHECKINT),
},
{
- /* IBM 3303 NVDISK */
+ /* 3303 NVDISK */
.vendor = "IBM",
.product = "3303 NVDISK",
.no_path_retry = (300 / DEFAULT_CHECKINT),
@@ -453,43 +494,7 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_ALUA,
},
/*
- * DELL
- */
- {
- /* DELL MD3000 */
- .vendor = "DELL",
- .product = "MD3000",
- .bl_product = "Universal Xport",
- .features = "2 pg_init_retries 50",
- .hwhandler = "1 rdac",
- .no_path_retry = 15,
- .checker_name = RDAC,
- .prio_name = PRIO_RDAC,
- },
- {
- /* DELL MD32xx/MD36xx */
- .vendor = "DELL",
- .product = "(MD32xx|MD36xx)",
- .bl_product = "Universal Xport",
- .features = "2 pg_init_retries 50",
- .hwhandler = "1 rdac",
- .no_path_retry = 15,
- .checker_name = RDAC,
- .prio_name = PRIO_RDAC,
- },
- {
- /* DELL MD34xx/MD38xx */
- .vendor = "DELL",
- .product = "(MD34xx|MD38xx)",
- .bl_product = "Universal Xport",
- .features = "2 pg_init_retries 50",
- .hwhandler = "1 rdac",
- .no_path_retry = 15,
- .checker_name = RDAC,
- .prio_name = PRIO_RDAC,
- },
- /*
- * NETAPP ONTAP family
+ * NetApp ONTAP family
*
* Maintainer : Martin George
* Mail : marting@netapp.com
@@ -511,8 +516,23 @@ static struct hwentry default_hw[] = {
.minio = 128,
.prio_name = PRIO_ONTAP,
},
+ /* LSI/Engenio/NetApp RDAC family
+ *
+ * Maintainer : Sean Stewart
+ * Mail : sean.stewart@netapp.com
+ */
+ {
+ .vendor = "(NETAPP|LSI|ENGENIO)",
+ .product = "INF-01-00",
+ .bl_product = "Universal Xport",
+ .features = "2 pg_init_retries 50",
+ .hwhandler = "1 rdac",
+ .no_path_retry = 30,
+ .checker_name = RDAC,
+ .prio_name = PRIO_RDAC,
+ },
/*
- * NEXENTA
+ * Nexenta
*
* Maintainer : Yacine Kheddache
* Mail : yacine@alyseo.com
@@ -526,18 +546,6 @@ static struct hwentry default_hw[] = {
.minio = 128,
},
/*
- * Pillar Data/Oracle
- *
- * Maintainer : Srinivasan Ramani
- * Mail : srinivas.ramani@oracle.com
- */
- {
- .vendor = "Pillar",
- .product = "Axiom.*",
- .pgfailback = FAILBACK_UNDEF,
- .prio_name = PRIO_ALUA,
- },
- /*
* SGI
*/
{
@@ -576,9 +584,22 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_ALUA,
},
/*
- * STK/Oracle
+ * Oracle
*/
{
+ /*
+ * Pillar Data
+ *
+ * Maintainer : Srinivasan Ramani
+ * Mail : srinivas.ramani@oracle.com
+ */
+ .vendor = "Pillar",
+ .product = "Axiom.*",
+ .pgfailback = FAILBACK_UNDEF,
+ .prio_name = PRIO_ALUA,
+ },
+ /* StorageTek */
+ {
.vendor = "STK",
.product = "OPENstorage D280",
.bl_product = "Universal Xport",
@@ -586,9 +607,16 @@ static struct hwentry default_hw[] = {
.checker_name = RDAC,
.prio_name = PRIO_RDAC,
},
- /*
- * SUN/Oracle
- */
+ {
+ .vendor = "STK",
+ .product = "FLEXLINE 380",
+ .bl_product = "Universal Xport",
+ .hwhandler = "1 rdac",
+ .no_path_retry = NO_PATH_RETRY_QUEUE,
+ .checker_name = RDAC,
+ .prio_name = PRIO_RDAC,
+ },
+ /* SUN */
{
.vendor = "SUN",
.product = "(StorEdge 3510|T4)",
@@ -604,25 +632,6 @@ static struct hwentry default_hw[] = {
.prio_name = PRIO_RDAC,
},
{
- .vendor = "EUROLOGC",
- .product = "FC2502",
- .pgfailback = FAILBACK_UNDEF,
- },
- /*
- * Pivot3
- *
- * Maintainer : Bart Brooks, Pivot3
- * Mail : bartb@pivot3.com
- */
- {
- .vendor = "PIVOT3",
- .product = "RAIGE VOLUME",
- .features = "1 queue_if_no_path",
- .pgpolicy = MULTIBUS,
- .pgfailback = FAILBACK_UNDEF,
- .minio = 100,
- },
- {
.vendor = "SUN",
.product = "CSM200_R",
.bl_product = "Universal Xport",
@@ -631,8 +640,8 @@ static struct hwentry default_hw[] = {
.checker_name = RDAC,
.prio_name = PRIO_RDAC,
},
- /* SUN/LSI 2510, 2540, 2530, 2540 */
{
+ /* 2510 / 2540 / 2530 / 2540 */
.vendor = "SUN",
.product = "LCSM100_[IEFS]",
.bl_product = "Universal Xport",
@@ -641,8 +650,8 @@ static struct hwentry default_hw[] = {
.checker_name = RDAC,
.prio_name = PRIO_RDAC,
},
- /* StorageTek 6180 */
{
+ /* StorageTek 6180 */
.vendor = "SUN",
.product = "SUN_6180",
.bl_product = "Universal Xport",
@@ -651,30 +660,23 @@ static struct hwentry default_hw[] = {
.checker_name = RDAC,
.prio_name = PRIO_RDAC,
},
- /* LSI/Engenio/NetApp RDAC
+ /*
+ * Pivot3
*
- * Maintainer : Sean Stewart
- * Mail : sean.stewart@netapp.com
+ * Maintainer : Bart Brooks, Pivot3
+ * Mail : bartb@pivot3.com
*/
{
- .vendor = "(NETAPP|LSI|ENGENIO)",
- .product = "INF-01-00",
- .bl_product = "Universal Xport",
- .features = "2 pg_init_retries 50",
- .hwhandler = "1 rdac",
- .no_path_retry = 30,
- .checker_name = RDAC,
- .prio_name = PRIO_RDAC,
- },
- {
- .vendor = "STK",
- .product = "FLEXLINE 380",
- .bl_product = "Universal Xport",
- .hwhandler = "1 rdac",
- .no_path_retry = NO_PATH_RETRY_QUEUE,
- .checker_name = RDAC,
- .prio_name = PRIO_RDAC,
+ .vendor = "PIVOT3",
+ .product = "RAIGE VOLUME",
+ .features = "1 queue_if_no_path",
+ .pgpolicy = MULTIBUS,
+ .pgfailback = FAILBACK_UNDEF,
+ .minio = 100,
},
+ /*
+ * Intel
+ */
{
.vendor = "Intel",
.product = "Multi-Flex",
@@ -682,6 +684,9 @@ static struct hwentry default_hw[] = {
.no_path_retry = NO_PATH_RETRY_QUEUE,
.prio_name = PRIO_ALUA,
},
+ /*
+ * Linux-IO Target
+ */
{
.vendor = "(LIO-ORG|SUSE)",
.product = "RBD",
@@ -690,6 +695,9 @@ static struct hwentry default_hw[] = {
.minio = 100,
.prio_name = PRIO_ALUA,
},
+ /*
+ * DataCore
+ */
{
.vendor = "DataCore",
.product = "SANmelody",
@@ -702,6 +710,9 @@ static struct hwentry default_hw[] = {
.no_path_retry = NO_PATH_RETRY_QUEUE,
.prio_name = PRIO_ALUA,
},
+ /*
+ * Pure Storage
+ */
{
.vendor = "PURE",
.product = "FlashArray",
@@ -710,6 +721,9 @@ static struct hwentry default_hw[] = {
.fast_io_fail = 10,
.dev_loss = 60,
},
+ /*
+ * Huawei
+ */
{
.vendor = "HUAWEI",
.product = "XSG1",
@@ -804,18 +818,29 @@ static struct hwentry default_hw[] = {
{
.vendor = NULL,
.product = NULL,
+ .revision = NULL,
+ .bl_product = NULL,
+ .pgpolicy = 0,
+ .uid_attribute = NULL,
+ .selector = NULL,
+ .checker_name = NULL,
.features = NULL,
.hwhandler = NULL,
- .selector = NULL,
- .pgpolicy = 0,
+ .prio_name = NULL,
+ .prio_args = NULL,
.pgfailback = 0,
.rr_weight = 0,
.no_path_retry = 0,
.minio = 0,
.minio_rq = 0,
- .checker_name = NULL,
- .prio_name = NULL,
- .prio_args = NULL,
+ .flush_on_last_del = 0,
+ .fast_io_fail = 0,
+ .dev_loss = 0,
+ .retain_hwhandler = NULL,
+ .detect_prio = NULL,
+ .deferred_remove = NULL,
+ .delay_watch_checks = 0,
+ .delay_wait_checks = 0,
},
};
--
2.7.4
^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [PATCH 5/5] multipath-tools: hwtable housekeeping
2016-07-23 0:29 ` [PATCH 5/5] multipath-tools: hwtable housekeeping Xose Vazquez Perez
@ 2016-07-31 8:55 ` Christophe Varoqui
2016-07-31 21:59 ` Xose Vazquez Perez
0 siblings, 1 reply; 12+ messages in thread
From: Christophe Varoqui @ 2016-07-31 8:55 UTC (permalink / raw)
To: Xose Vazquez Perez; +Cc: device-mapper development
[-- Attachment #1.1: Type: text/plain, Size: 24445 bytes --]
The "change default failback from manual to immediate" patch is reverted,
as requested by Hannes.
I rebased and merged your patches 1 to 4 of this set.
Can you rebase this 5-5 patch and resubmit ?
Thanks.
On Sat, Jul 23, 2016 at 2:29 AM, Xose Vazquez Perez <xose.vazquez@gmail.com>
wrote:
> Mainly: arrange some families, clean redundant labels, detail IBM devices,
> add remaining attributes to last member(NULL) and add missing vendor
> labels.
>
> Cc: Christophe Varoqui <christophe.varoqui@opensvc.com>
> Cc: device-mapper development <dm-devel@redhat.com>
> Signed-off-by: Xose Vazquez Perez <xose.vazquez@gmail.com>
> ---
> libmultipath/hwtable.c | 299
> +++++++++++++++++++++++++++----------------------
> 1 file changed, 162 insertions(+), 137 deletions(-)
>
> diff --git a/libmultipath/hwtable.c b/libmultipath/hwtable.c
> index 44fc309..1efaeee 100644
> --- a/libmultipath/hwtable.c
> +++ b/libmultipath/hwtable.c
> @@ -25,15 +25,6 @@
> */
> static struct hwentry default_hw[] = {
> /*
> - * Compellent Technologies/DELL
> - */
> - {
> - .vendor = "COMPELNT",
> - .product = "Compellent Vol",
> - .pgpolicy = MULTIBUS,
> - .no_path_retry = NO_PATH_RETRY_QUEUE,
> - },
> - /*
> * Apple
> *
> * Maintainer : Shyam Sundar
> @@ -46,7 +37,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> },
> /*
> - * StorageWorks/HPE
> + * HPE
> */
> {
> .vendor = "3PARdata",
> @@ -99,7 +90,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_ALUA,
> },
> {
> - /* HP MSA2000 family with old firmware */
> + /* MSA2000 family with old firmware */
> .vendor = "HP",
> .product = "(MSA2[02]12fc|MSA2012i)",
> .pgpolicy = MULTIBUS,
> @@ -107,7 +98,7 @@ static struct hwentry default_hw[] = {
> .minio = 100,
> },
> {
> - /* HP MSA2000 family with new firmware */
> + /* MSA2000 family with new firmware */
> .vendor = "HP",
> .product =
> "(MSA2012sa|MSA23(12|24)(fc|i|sa)|MSA2000s VOLUME)",
> .no_path_retry = 18,
> @@ -115,7 +106,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_ALUA,
> },
> {
> - /* HP MSA 1040/2040 family */
> + /* MSA 1040/2040 family */
> .vendor = "HP",
> .product = "MSA (1|2)040 SA(N|S)",
> .no_path_retry = 18,
> @@ -123,7 +114,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_ALUA,
> },
> {
> - /* HP SVSP */
> + /* SVSP */
> .vendor = "HP",
> .product = "HSVX700",
> .hwhandler = "1 alua",
> @@ -132,7 +123,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_ALUA,
> },
> {
> - /* HP Smart Array */
> + /* Smart Array */
> .vendor = "HP",
> .product = "LOGICAL VOLUME.*",
> .pgpolicy = MULTIBUS,
> @@ -140,7 +131,7 @@ static struct hwentry default_hw[] = {
> .no_path_retry = 12,
> },
> {
> - /* HP P2000 family */
> + /* P2000 family */
> .vendor = "HP",
> .product = "(P2000 G3 FC|P2000G3 FC/iSCSI|P2000 G3
> SAS|P2000 G3 iSCSI)",
> .no_path_retry = 18,
> @@ -148,7 +139,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_ALUA,
> },
> /*
> - * DDN
> + * DataDirect Networks
> */
> {
> .vendor = "DDN",
> @@ -196,6 +187,49 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> },
> /*
> + * DELL
> + */
> + {
> + /* Compellent family */
> + .vendor = "COMPELNT",
> + .product = "Compellent Vol",
> + .pgpolicy = MULTIBUS,
> + .no_path_retry = NO_PATH_RETRY_QUEUE,
> + },
> + {
> + /* MD3000 */
> + .vendor = "DELL",
> + .product = "MD3000",
> + .bl_product = "Universal Xport",
> + .features = "2 pg_init_retries 50",
> + .hwhandler = "1 rdac",
> + .no_path_retry = 15,
> + .checker_name = RDAC,
> + .prio_name = PRIO_RDAC,
> + },
> + {
> + /* MD32xx/MD36xx */
> + .vendor = "DELL",
> + .product = "(MD32xx|MD36xx)",
> + .bl_product = "Universal Xport",
> + .features = "2 pg_init_retries 50",
> + .hwhandler = "1 rdac",
> + .no_path_retry = 15,
> + .checker_name = RDAC,
> + .prio_name = PRIO_RDAC,
> + },
> + {
> + /* MD34xx/MD38xx */
> + .vendor = "DELL",
> + .product = "(MD34xx|MD38xx)",
> + .bl_product = "Universal Xport",
> + .features = "2 pg_init_retries 50",
> + .hwhandler = "1 rdac",
> + .no_path_retry = 15,
> + .checker_name = RDAC,
> + .prio_name = PRIO_RDAC,
> + },
> + /*
> * Fujitsu
> */
> {
> @@ -211,6 +245,12 @@ static struct hwentry default_hw[] = {
> .no_path_retry = 10,
> .prio_name = PRIO_ALUA,
> },
> + /* FibreCAT S80 */
> + {
> + .vendor = "EUROLOGC",
> + .product = "FC2502",
> + .pgfailback = FAILBACK_UNDEF,
> + },
> /*
> * Hitachi
> *
> @@ -242,7 +282,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> },
> {
> - /* IBM FAStT 1722-600 */
> + /* DS4300 / FAStT600 */
> .vendor = "IBM",
> .product = "^1722-600",
> .bl_product = "Universal Xport",
> @@ -253,7 +293,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_RDAC,
> },
> {
> - /* IBM DS4100 */
> + /* DS4100 / FAStT100 */
> .vendor = "IBM",
> .product = "^1724",
> .bl_product = "Universal Xport",
> @@ -264,7 +304,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_RDAC,
> },
> {
> - /* IBM DS3200 / DS3300 / DS3400 */
> + /* DS3200 / DS3300 / DS3400 / Boot DS */
> .vendor = "IBM",
> .product = "^1726",
> .bl_product = "Universal Xport",
> @@ -275,7 +315,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_RDAC,
> },
> {
> - /* IBM DS4400 / DS4500 / FAStT700 */
> + /* DS4400 / DS4500 / FAStT700 / FAStT900 */
> .vendor = "IBM",
> .product = "^1742",
> .bl_product = "Universal Xport",
> @@ -285,6 +325,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_RDAC,
> },
> {
> + /* DS3500 / DS3512 / DS3524 */
> .vendor = "IBM",
> .product = "^(1745|1746)",
> .bl_product = "Universal Xport",
> @@ -295,7 +336,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_RDAC,
> },
> {
> - /* IBM DS4700 */
> + /* DS3950 / DS4200 / DS4700 / DS5020 */
> .vendor = "IBM",
> .product = "^1814",
> .bl_product = "Universal Xport",
> @@ -305,7 +346,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_RDAC,
> },
> {
> - /* IBM DS4800 */
> + /* DS4800 */
> .vendor = "IBM",
> .product = "^1815",
> .bl_product = "Universal Xport",
> @@ -315,7 +356,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_RDAC,
> },
> {
> - /* IBM DS5000 */
> + /* DS5000 / DS5100 / DS5300 / DCS3700 */
> .vendor = "IBM",
> .product = "^1818",
> .bl_product = "Universal Xport",
> @@ -325,7 +366,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_RDAC,
> },
> {
> - /* IBM Netfinity Fibre Channel RAID Controller Unit */
> + /* Netfinity Fibre Channel RAID Controller Unit */
> .vendor = "IBM",
> .product = "^3526",
> .bl_product = "Universal Xport",
> @@ -335,14 +376,14 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_RDAC,
> },
> {
> - /* IBM DS4200 / FAStT200 */
> + /* DS4200 / FAStT200 */
> .vendor = "IBM",
> .product = "^3542",
> .pgpolicy = GROUP_BY_SERIAL,
> .pgfailback = FAILBACK_UNDEF,
> },
> {
> - /* IBM ESS F20 aka Shark */
> + /* Enterprise Storage Server / Shark 800 */
> .vendor = "IBM",
> .product = "^2105800",
> .features = "1 queue_if_no_path",
> @@ -350,7 +391,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> },
> {
> - /* IBM ESS F20 aka Shark */
> + /* Enterprise Storage Server / Shark F20 */
> .vendor = "IBM",
> .product = "^2105F20",
> .features = "1 queue_if_no_path",
> @@ -358,14 +399,14 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> },
> {
> - /* IBM DS6000 */
> + /* DS6000 */
> .vendor = "IBM",
> .product = "^1750500",
> .features = "1 queue_if_no_path",
> .prio_name = PRIO_ALUA,
> },
> {
> - /* IBM DS8000 */
> + /* DS8000 */
> .vendor = "IBM",
> .product = "^2107900",
> .features = "1 queue_if_no_path",
> @@ -373,14 +414,14 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> },
> {
> - /* IBM SAN Volume Controller */
> + /* SAN Volume Controller / Storwize */
> .vendor = "IBM",
> .product = "^2145",
> .features = "1 queue_if_no_path",
> .prio_name = PRIO_ALUA,
> },
> {
> - /* IBM S/390 ECKD DASD */
> + /* S/390 ECKD DASD */
> .vendor = "IBM",
> .product = "S/390 DASD ECKD",
> .bl_product = "S/390.*",
> @@ -390,7 +431,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> },
> {
> - /* IBM S/390 FBA DASD */
> + /* S/390 FBA DASD */
> .vendor = "IBM",
> .product = "S/390 DASD FBA",
> .bl_product = "S/390.*",
> @@ -400,7 +441,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> },
> {
> - /* IBM IPR */
> + /* Power RAID (IPR) */
> .vendor = "IBM",
> .product = "^IPR.*",
> .features = "1 queue_if_no_path",
> @@ -408,7 +449,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_ALUA,
> },
> {
> - /* IBM RSSM */
> + /* SAS RAID Controller Module (RSSM) */
> .vendor = "IBM",
> .product = "1820N00",
> .no_path_retry = NO_PATH_RETRY_QUEUE,
> @@ -416,7 +457,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_ALUA,
> },
> {
> - /* IBM XIV Storage System */
> + /* XIV Storage System */
> .vendor = "IBM",
> .product = "2810XIV",
> .features = "1 queue_if_no_path",
> @@ -438,7 +479,7 @@ static struct hwentry default_hw[] = {
> .no_path_retry = (300 / DEFAULT_CHECKINT),
> },
> {
> - /* IBM 3303 NVDISK */
> + /* 3303 NVDISK */
> .vendor = "IBM",
> .product = "3303 NVDISK",
> .no_path_retry = (300 / DEFAULT_CHECKINT),
> @@ -453,43 +494,7 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_ALUA,
> },
> /*
> - * DELL
> - */
> - {
> - /* DELL MD3000 */
> - .vendor = "DELL",
> - .product = "MD3000",
> - .bl_product = "Universal Xport",
> - .features = "2 pg_init_retries 50",
> - .hwhandler = "1 rdac",
> - .no_path_retry = 15,
> - .checker_name = RDAC,
> - .prio_name = PRIO_RDAC,
> - },
> - {
> - /* DELL MD32xx/MD36xx */
> - .vendor = "DELL",
> - .product = "(MD32xx|MD36xx)",
> - .bl_product = "Universal Xport",
> - .features = "2 pg_init_retries 50",
> - .hwhandler = "1 rdac",
> - .no_path_retry = 15,
> - .checker_name = RDAC,
> - .prio_name = PRIO_RDAC,
> - },
> - {
> - /* DELL MD34xx/MD38xx */
> - .vendor = "DELL",
> - .product = "(MD34xx|MD38xx)",
> - .bl_product = "Universal Xport",
> - .features = "2 pg_init_retries 50",
> - .hwhandler = "1 rdac",
> - .no_path_retry = 15,
> - .checker_name = RDAC,
> - .prio_name = PRIO_RDAC,
> - },
> - /*
> - * NETAPP ONTAP family
> + * NetApp ONTAP family
> *
> * Maintainer : Martin George
> * Mail : marting@netapp.com
> @@ -511,8 +516,23 @@ static struct hwentry default_hw[] = {
> .minio = 128,
> .prio_name = PRIO_ONTAP,
> },
> + /* LSI/Engenio/NetApp RDAC family
> + *
> + * Maintainer : Sean Stewart
> + * Mail : sean.stewart@netapp.com
> + */
> + {
> + .vendor = "(NETAPP|LSI|ENGENIO)",
> + .product = "INF-01-00",
> + .bl_product = "Universal Xport",
> + .features = "2 pg_init_retries 50",
> + .hwhandler = "1 rdac",
> + .no_path_retry = 30,
> + .checker_name = RDAC,
> + .prio_name = PRIO_RDAC,
> + },
> /*
> - * NEXENTA
> + * Nexenta
> *
> * Maintainer : Yacine Kheddache
> * Mail : yacine@alyseo.com
> @@ -526,18 +546,6 @@ static struct hwentry default_hw[] = {
> .minio = 128,
> },
> /*
> - * Pillar Data/Oracle
> - *
> - * Maintainer : Srinivasan Ramani
> - * Mail : srinivas.ramani@oracle.com
> - */
> - {
> - .vendor = "Pillar",
> - .product = "Axiom.*",
> - .pgfailback = FAILBACK_UNDEF,
> - .prio_name = PRIO_ALUA,
> - },
> - /*
> * SGI
> */
> {
> @@ -576,9 +584,22 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_ALUA,
> },
> /*
> - * STK/Oracle
> + * Oracle
> */
> {
> + /*
> + * Pillar Data
> + *
> + * Maintainer : Srinivasan Ramani
> + * Mail : srinivas.ramani@oracle.com
> + */
> + .vendor = "Pillar",
> + .product = "Axiom.*",
> + .pgfailback = FAILBACK_UNDEF,
> + .prio_name = PRIO_ALUA,
> + },
> + /* StorageTek */
> + {
> .vendor = "STK",
> .product = "OPENstorage D280",
> .bl_product = "Universal Xport",
> @@ -586,9 +607,16 @@ static struct hwentry default_hw[] = {
> .checker_name = RDAC,
> .prio_name = PRIO_RDAC,
> },
> - /*
> - * SUN/Oracle
> - */
> + {
> + .vendor = "STK",
> + .product = "FLEXLINE 380",
> + .bl_product = "Universal Xport",
> + .hwhandler = "1 rdac",
> + .no_path_retry = NO_PATH_RETRY_QUEUE,
> + .checker_name = RDAC,
> + .prio_name = PRIO_RDAC,
> + },
> + /* SUN */
> {
> .vendor = "SUN",
> .product = "(StorEdge 3510|T4)",
> @@ -604,25 +632,6 @@ static struct hwentry default_hw[] = {
> .prio_name = PRIO_RDAC,
> },
> {
> - .vendor = "EUROLOGC",
> - .product = "FC2502",
> - .pgfailback = FAILBACK_UNDEF,
> - },
> - /*
> - * Pivot3
> - *
> - * Maintainer : Bart Brooks, Pivot3
> - * Mail : bartb@pivot3.com
> - */
> - {
> - .vendor = "PIVOT3",
> - .product = "RAIGE VOLUME",
> - .features = "1 queue_if_no_path",
> - .pgpolicy = MULTIBUS,
> - .pgfailback = FAILBACK_UNDEF,
> - .minio = 100,
> - },
> - {
> .vendor = "SUN",
> .product = "CSM200_R",
> .bl_product = "Universal Xport",
> @@ -631,8 +640,8 @@ static struct hwentry default_hw[] = {
> .checker_name = RDAC,
> .prio_name = PRIO_RDAC,
> },
> - /* SUN/LSI 2510, 2540, 2530, 2540 */
> {
> + /* 2510 / 2540 / 2530 / 2540 */
> .vendor = "SUN",
> .product = "LCSM100_[IEFS]",
> .bl_product = "Universal Xport",
> @@ -641,8 +650,8 @@ static struct hwentry default_hw[] = {
> .checker_name = RDAC,
> .prio_name = PRIO_RDAC,
> },
> - /* StorageTek 6180 */
> {
> + /* StorageTek 6180 */
> .vendor = "SUN",
> .product = "SUN_6180",
> .bl_product = "Universal Xport",
> @@ -651,30 +660,23 @@ static struct hwentry default_hw[] = {
> .checker_name = RDAC,
> .prio_name = PRIO_RDAC,
> },
> - /* LSI/Engenio/NetApp RDAC
> + /*
> + * Pivot3
> *
> - * Maintainer : Sean Stewart
> - * Mail : sean.stewart@netapp.com
> + * Maintainer : Bart Brooks, Pivot3
> + * Mail : bartb@pivot3.com
> */
> {
> - .vendor = "(NETAPP|LSI|ENGENIO)",
> - .product = "INF-01-00",
> - .bl_product = "Universal Xport",
> - .features = "2 pg_init_retries 50",
> - .hwhandler = "1 rdac",
> - .no_path_retry = 30,
> - .checker_name = RDAC,
> - .prio_name = PRIO_RDAC,
> - },
> - {
> - .vendor = "STK",
> - .product = "FLEXLINE 380",
> - .bl_product = "Universal Xport",
> - .hwhandler = "1 rdac",
> - .no_path_retry = NO_PATH_RETRY_QUEUE,
> - .checker_name = RDAC,
> - .prio_name = PRIO_RDAC,
> + .vendor = "PIVOT3",
> + .product = "RAIGE VOLUME",
> + .features = "1 queue_if_no_path",
> + .pgpolicy = MULTIBUS,
> + .pgfailback = FAILBACK_UNDEF,
> + .minio = 100,
> },
> + /*
> + * Intel
> + */
> {
> .vendor = "Intel",
> .product = "Multi-Flex",
> @@ -682,6 +684,9 @@ static struct hwentry default_hw[] = {
> .no_path_retry = NO_PATH_RETRY_QUEUE,
> .prio_name = PRIO_ALUA,
> },
> + /*
> + * Linux-IO Target
> + */
> {
> .vendor = "(LIO-ORG|SUSE)",
> .product = "RBD",
> @@ -690,6 +695,9 @@ static struct hwentry default_hw[] = {
> .minio = 100,
> .prio_name = PRIO_ALUA,
> },
> + /*
> + * DataCore
> + */
> {
> .vendor = "DataCore",
> .product = "SANmelody",
> @@ -702,6 +710,9 @@ static struct hwentry default_hw[] = {
> .no_path_retry = NO_PATH_RETRY_QUEUE,
> .prio_name = PRIO_ALUA,
> },
> + /*
> + * Pure Storage
> + */
> {
> .vendor = "PURE",
> .product = "FlashArray",
> @@ -710,6 +721,9 @@ static struct hwentry default_hw[] = {
> .fast_io_fail = 10,
> .dev_loss = 60,
> },
> + /*
> + * Huawei
> + */
> {
> .vendor = "HUAWEI",
> .product = "XSG1",
> @@ -804,18 +818,29 @@ static struct hwentry default_hw[] = {
> {
> .vendor = NULL,
> .product = NULL,
> + .revision = NULL,
> + .bl_product = NULL,
> + .pgpolicy = 0,
> + .uid_attribute = NULL,
> + .selector = NULL,
> + .checker_name = NULL,
> .features = NULL,
> .hwhandler = NULL,
> - .selector = NULL,
> - .pgpolicy = 0,
> + .prio_name = NULL,
> + .prio_args = NULL,
> .pgfailback = 0,
> .rr_weight = 0,
> .no_path_retry = 0,
> .minio = 0,
> .minio_rq = 0,
> - .checker_name = NULL,
> - .prio_name = NULL,
> - .prio_args = NULL,
> + .flush_on_last_del = 0,
> + .fast_io_fail = 0,
> + .dev_loss = 0,
> + .retain_hwhandler = NULL,
> + .detect_prio = NULL,
> + .deferred_remove = NULL,
> + .delay_watch_checks = 0,
> + .delay_wait_checks = 0,
> },
> };
>
> --
> 2.7.4
>
>
[-- Attachment #1.2: Type: text/html, Size: 33717 bytes --]
[-- Attachment #2: Type: text/plain, Size: 0 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 5/5] multipath-tools: hwtable housekeeping
2016-07-31 8:55 ` Christophe Varoqui
@ 2016-07-31 21:59 ` Xose Vazquez Perez
2016-08-01 6:55 ` Christophe Varoqui
0 siblings, 1 reply; 12+ messages in thread
From: Xose Vazquez Perez @ 2016-07-31 21:59 UTC (permalink / raw)
To: Christophe Varoqui, Hannes Reinecke; +Cc: device-mapper development
On 07/31/2016 10:55 AM, Christophe Varoqui wrote:
> The "change default failback from manual to immediate" patch is
> reverted, as requested by Hannes.
Hannes asked also to revert: 1234de2486211995be3193205387c08c6f682f91
"change default path_grouping_policy from failover to group_by_prio"
And a minimalist request, could you remove just this link from the front-page? :
http://christophe.varoqui.free.fr/multipath-tools/multipath-tools-0.5.0.tar.bz2
Some distributions are monitoring upstream projects to detect new
releases. And they are getting outdated/wrong information.
Thank you.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 5/5] multipath-tools: hwtable housekeeping
2016-07-31 21:59 ` Xose Vazquez Perez
@ 2016-08-01 6:55 ` Christophe Varoqui
2016-08-01 7:10 ` Hannes Reinecke
2016-08-01 14:00 ` Xose Vazquez Perez
0 siblings, 2 replies; 12+ messages in thread
From: Christophe Varoqui @ 2016-08-01 6:55 UTC (permalink / raw)
To: Xose Vazquez Perez; +Cc: device-mapper development
[-- Attachment #1.1: Type: text/plain, Size: 925 bytes --]
Yes, I'll take care of the revert to "failover" as the default path
grouping policy.
Indeed, you can postpone your pending patch rebasing to this incoming
commit.
The website update is done.
Thanks,
Christophe.
On Sun, Jul 31, 2016 at 11:59 PM, Xose Vazquez Perez <xose.vazquez@gmail.com
> wrote:
> On 07/31/2016 10:55 AM, Christophe Varoqui wrote:
>
> > The "change default failback from manual to immediate" patch is
> > reverted, as requested by Hannes.
>
> Hannes asked also to revert: 1234de2486211995be3193205387c08c6f682f91
> "change default path_grouping_policy from failover to group_by_prio"
>
>
> And a minimalist request, could you remove just this link from the
> front-page? :
>
> http://christophe.varoqui.free.fr/multipath-tools/multipath-tools-0.5.0.tar.bz2
> Some distributions are monitoring upstream projects to detect new
> releases. And they are getting outdated/wrong information.
>
> Thank you.
>
[-- Attachment #1.2: Type: text/html, Size: 1522 bytes --]
[-- Attachment #2: Type: text/plain, Size: 0 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 5/5] multipath-tools: hwtable housekeeping
2016-08-01 6:55 ` Christophe Varoqui
@ 2016-08-01 7:10 ` Hannes Reinecke
2016-08-01 7:32 ` Christophe Varoqui
2016-08-01 14:00 ` Xose Vazquez Perez
1 sibling, 1 reply; 12+ messages in thread
From: Hannes Reinecke @ 2016-08-01 7:10 UTC (permalink / raw)
To: Christophe Varoqui, Xose Vazquez Perez; +Cc: device-mapper development
On 08/01/2016 08:55 AM, Christophe Varoqui wrote:
> Yes, I'll take care of the revert to "failover" as the default path
> grouping policy.
> Indeed, you can postpone your pending patch rebasing to this incoming
> commit.
>
> The website update is done.
>
And while you're at it:
There are some entries which list a grouping policy as 'group_by_prio',
but don't have prioritizer set. Which it completely pointless.
They should be switched to 'multibus' instead.
But if the patch is already done I'll be sending a new patch.
Cheers,
Hannes
--
Dr. Hannes Reinecke Teamlead Storage & Networking
hare@suse.de +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG Nürnberg)
--
dm-devel mailing list
dm-devel@redhat.com
https://www.redhat.com/mailman/listinfo/dm-devel
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 5/5] multipath-tools: hwtable housekeeping
2016-08-01 7:10 ` Hannes Reinecke
@ 2016-08-01 7:32 ` Christophe Varoqui
0 siblings, 0 replies; 12+ messages in thread
From: Christophe Varoqui @ 2016-08-01 7:32 UTC (permalink / raw)
To: Hannes Reinecke; +Cc: device-mapper development, Xose Vazquez Perez
[-- Attachment #1.1: Type: text/plain, Size: 1085 bytes --]
Done for the revert, and as an incremental patch, the switch to multibus
for the devices w/o a prioritizer set.
Thanks.
On Mon, Aug 1, 2016 at 9:10 AM, Hannes Reinecke <hare@suse.de> wrote:
> On 08/01/2016 08:55 AM, Christophe Varoqui wrote:
>
>> Yes, I'll take care of the revert to "failover" as the default path
>> grouping policy.
>> Indeed, you can postpone your pending patch rebasing to this incoming
>> commit.
>>
>> The website update is done.
>>
>> And while you're at it:
>
> There are some entries which list a grouping policy as 'group_by_prio',
> but don't have prioritizer set. Which it completely pointless.
> They should be switched to 'multibus' instead.
>
> But if the patch is already done I'll be sending a new patch.
>
> Cheers,
>
> Hannes
> --
> Dr. Hannes Reinecke Teamlead Storage & Networking
> hare@suse.de +49 911 74053 688
> SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
> GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
> HRB 21284 (AG Nürnberg)
>
[-- Attachment #1.2: Type: text/html, Size: 1830 bytes --]
[-- Attachment #2: Type: text/plain, Size: 0 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 5/5] multipath-tools: hwtable housekeeping
2016-08-01 6:55 ` Christophe Varoqui
2016-08-01 7:10 ` Hannes Reinecke
@ 2016-08-01 14:00 ` Xose Vazquez Perez
2016-08-09 15:16 ` Christophe Varoqui
1 sibling, 1 reply; 12+ messages in thread
From: Xose Vazquez Perez @ 2016-08-01 14:00 UTC (permalink / raw)
To: Christophe Varoqui; +Cc: device-mapper development
On 08/01/2016 08:55 AM, Christophe Varoqui wrote:
> Yes, I'll take care of the revert to "failover" as the default path grouping policy.
> Indeed, you can postpone your pending patch rebasing to this incoming commit.
I will send new ones.
^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [PATCH 5/5] multipath-tools: hwtable housekeeping
2016-08-01 14:00 ` Xose Vazquez Perez
@ 2016-08-09 15:16 ` Christophe Varoqui
0 siblings, 0 replies; 12+ messages in thread
From: Christophe Varoqui @ 2016-08-09 15:16 UTC (permalink / raw)
To: Xose Vazquez Perez; +Cc: device-mapper development
[-- Attachment #1.1: Type: text/plain, Size: 432 bytes --]
I think upstream is now up-to-date with the patchsets you posted you to
this day.
Thanks.
On Mon, Aug 1, 2016 at 4:00 PM, Xose Vazquez Perez <xose.vazquez@gmail.com>
wrote:
> On 08/01/2016 08:55 AM, Christophe Varoqui wrote:
>
> > Yes, I'll take care of the revert to "failover" as the default path
> grouping policy.
> > Indeed, you can postpone your pending patch rebasing to this incoming
> commit.
>
> I will send new ones.
>
[-- Attachment #1.2: Type: text/html, Size: 795 bytes --]
[-- Attachment #2: Type: text/plain, Size: 0 bytes --]
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2016-08-09 15:16 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-07-23 0:29 [PATCH 1/5] multipath-tools: delete no_path_retry attribute when it is equal to default value Xose Vazquez Perez
2016-07-23 0:29 ` [PATCH 2/5] multipath-tools: Clarify template rules of hwtable Xose Vazquez Perez
2016-07-23 0:29 ` [PATCH 3/5] multipath-tools: use parentheses() to cover a regex with pipe| Xose Vazquez Perez
2016-07-23 0:29 ` [PATCH 4/5] multipath-tools: replace leading spaces with tabs II Xose Vazquez Perez
2016-07-23 0:29 ` [PATCH 5/5] multipath-tools: hwtable housekeeping Xose Vazquez Perez
2016-07-31 8:55 ` Christophe Varoqui
2016-07-31 21:59 ` Xose Vazquez Perez
2016-08-01 6:55 ` Christophe Varoqui
2016-08-01 7:10 ` Hannes Reinecke
2016-08-01 7:32 ` Christophe Varoqui
2016-08-01 14:00 ` Xose Vazquez Perez
2016-08-09 15:16 ` Christophe Varoqui
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.