* [PATCH 0/4] make tur the default path checker
@ 2016-06-23 13:42 Xose Vazquez Perez
2016-06-23 13:42 ` [PATCH 1/4] multipath-tools: change the default path checker from directio to tur Xose Vazquez Perez
` (4 more replies)
0 siblings, 5 replies; 11+ messages in thread
From: Xose Vazquez Perez @ 2016-06-23 13:42 UTC (permalink / raw)
Cc: Matthias Rudolph, Xose Vazquez Perez, Yacine Kheddache,
device-mapper development, Brian King, IBM, Srinivasan Ramani,
Sean Stewart, Shyam Sundar, Bart Brooks, Pivot3,
Edward Goggin, EMC
Based on previous Hannes's work.
He says:
"For years I've been telling our customers to use the 'tur' checker
as the current default 'directio' will cause spurious path failures
under high load."
Xose Vazquez Perez (4):
multipath-tools: change the default path checker from directio to tur
multipath-tools: update path checker info in multipath.conf.5
multipath-tools: replace TUR with DEFAULT_CHECKER in hwtable
multipath-tools: replace DIRECTIO with DEFAULT_CHECKER in hwtable
libmultipath/checkers.h | 2 +-
libmultipath/hwtable.c | 100 ++++++++++++++++++++++-----------------------
multipath/multipath.conf.5 | 8 ++--
3 files changed, 56 insertions(+), 54 deletions(-)
Cc: Shyam Sundar <g.shyamsundar@yahoo.co.in>
Cc: Edward Goggin, EMC <egoggin@emc.com>
Cc: Matthias Rudolph <matthias.rudolph@hds.com>
Cc: Brian King, IBM <brking@linux.vnet.ibm.com>
Cc: Yacine Kheddache <yacine@alyseo.com>
Cc: Srinivasan Ramani <srinivas.ramani@oracle.com>
Cc: Bart Brooks, Pivot3 <bartb@pivot3.com>
Cc: Martin George <marting@netapp.com>
Cc: Sean Stewart <sean.stewart@netapp.com>
Cc: Benjamin Marzinski <bmarzins@redhat.com>
Cc: Hannes Reinecke <hare@suse.de>
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>
--
2.5.5
^ permalink raw reply [flat|nested] 11+ messages in thread
* [PATCH 1/4] multipath-tools: change the default path checker from directio to tur
2016-06-23 13:42 [PATCH 0/4] make tur the default path checker Xose Vazquez Perez
@ 2016-06-23 13:42 ` Xose Vazquez Perez
2016-06-23 13:42 ` [PATCH 2/4] multipath-tools: update path checker info in multipath.conf.5 Xose Vazquez Perez
` (3 subsequent siblings)
4 siblings, 0 replies; 11+ messages in thread
From: Xose Vazquez Perez @ 2016-06-23 13:42 UTC (permalink / raw)
Cc: Matthias Rudolph, Xose Vazquez Perez, Yacine Kheddache,
device-mapper development, Brian King, IBM, Srinivasan Ramani,
Sean Stewart, Shyam Sundar, Bart Brooks, Pivot3,
Edward Goggin, EMC
change DEFAULT_CHECKER to TUR
Cc: Shyam Sundar <g.shyamsundar@yahoo.co.in>
Cc: Edward Goggin, EMC <egoggin@emc.com>
Cc: Matthias Rudolph <matthias.rudolph@hds.com>
Cc: Brian King, IBM <brking@linux.vnet.ibm.com>
Cc: Yacine Kheddache <yacine@alyseo.com>
Cc: Srinivasan Ramani <srinivas.ramani@oracle.com>
Cc: Bart Brooks, Pivot3 <bartb@pivot3.com>
Cc: Martin George <marting@netapp.com>
Cc: Sean Stewart <sean.stewart@netapp.com>
Cc: Benjamin Marzinski <bmarzins@redhat.com>
Cc: Hannes Reinecke <hare@suse.de>
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/checkers.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libmultipath/checkers.h b/libmultipath/checkers.h
index a935b3f..374c826 100644
--- a/libmultipath/checkers.h
+++ b/libmultipath/checkers.h
@@ -85,7 +85,7 @@ enum path_check_state {
#define READSECTOR0 "readsector0"
#define CCISS_TUR "cciss_tur"
-#define DEFAULT_CHECKER DIRECTIO
+#define DEFAULT_CHECKER TUR
#define ASYNC_TIMEOUT_SEC 30
--
2.5.5
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 2/4] multipath-tools: update path checker info in multipath.conf.5
2016-06-23 13:42 [PATCH 0/4] make tur the default path checker Xose Vazquez Perez
2016-06-23 13:42 ` [PATCH 1/4] multipath-tools: change the default path checker from directio to tur Xose Vazquez Perez
@ 2016-06-23 13:42 ` Xose Vazquez Perez
2016-06-23 13:42 ` [PATCH 3/4] multipath-tools: replace TUR with DEFAULT_CHECKER in hwtable Xose Vazquez Perez
` (2 subsequent siblings)
4 siblings, 0 replies; 11+ messages in thread
From: Xose Vazquez Perez @ 2016-06-23 13:42 UTC (permalink / raw)
Cc: Matthias Rudolph, Xose Vazquez Perez, Yacine Kheddache,
device-mapper development, Brian King, IBM, Srinivasan Ramani,
Sean Stewart, Shyam Sundar, Bart Brooks, Pivot3,
Edward Goggin, EMC
From now on tur is by default, and warn about directio drawbacks.
Cc: Shyam Sundar <g.shyamsundar@yahoo.co.in>
Cc: Edward Goggin, EMC <egoggin@emc.com>
Cc: Matthias Rudolph <matthias.rudolph@hds.com>
Cc: Brian King, IBM <brking@linux.vnet.ibm.com>
Cc: Yacine Kheddache <yacine@alyseo.com>
Cc: Srinivasan Ramani <srinivas.ramani@oracle.com>
Cc: Bart Brooks, Pivot3 <bartb@pivot3.com>
Cc: Martin George <marting@netapp.com>
Cc: Sean Stewart <sean.stewart@netapp.com>
Cc: Benjamin Marzinski <bmarzins@redhat.com>
Cc: Hannes Reinecke <hare@suse.de>
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>
---
multipath/multipath.conf.5 | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/multipath/multipath.conf.5 b/multipath/multipath.conf.5
index e57b8e6..9f0d194 100644
--- a/multipath/multipath.conf.5
+++ b/multipath/multipath.conf.5
@@ -271,7 +271,7 @@ are
.TP 12
.B readsector0
(Deprecated) Read the first sector of the device. This checker is being
-deprecated, please use \fIdirectio\fR instead
+deprecated, please use \fItur\fR instead
.TP
.B tur
Issue a
@@ -289,9 +289,11 @@ Check the path state for HP storage arrays with Active/Standby firmware.
Check the path state for LSI/Engenio/NetApp E-Series RDAC storage controller.
.TP
.B directio
-Read the first sector with direct I/O.
+(Deprecated) Read the first sector with direct I/O. This checker is being
+deprecated, it will cause spurious path failures under high load.
+Please use \fItur\fR instead.
.TP
-Default value is \fIdirectio\fR.
+Default value is \fItur\fR.
.RE
.TP
.B failback
--
2.5.5
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 3/4] multipath-tools: replace TUR with DEFAULT_CHECKER in hwtable
2016-06-23 13:42 [PATCH 0/4] make tur the default path checker Xose Vazquez Perez
2016-06-23 13:42 ` [PATCH 1/4] multipath-tools: change the default path checker from directio to tur Xose Vazquez Perez
2016-06-23 13:42 ` [PATCH 2/4] multipath-tools: update path checker info in multipath.conf.5 Xose Vazquez Perez
@ 2016-06-23 13:42 ` Xose Vazquez Perez
2016-06-23 13:49 ` Hannes Reinecke
2016-06-23 13:42 ` [PATCH 4/4] multipath-tools: replace DIRECTIO with DEFAULT_CHECKER in hwtable Xose Vazquez Perez
2016-07-08 6:52 ` [PATCH 0/4] make tur the default path checker Christophe Varoqui
4 siblings, 1 reply; 11+ messages in thread
From: Xose Vazquez Perez @ 2016-06-23 13:42 UTC (permalink / raw)
Cc: Matthias Rudolph, Xose Vazquez Perez, Yacine Kheddache,
device-mapper development, Brian King, IBM, Srinivasan Ramani,
Sean Stewart, Shyam Sundar, Bart Brooks, Pivot3,
Edward Goggin, EMC
DEFAULT_CHECKER already is TUR
Cc: Shyam Sundar <g.shyamsundar@yahoo.co.in>
Cc: Edward Goggin, EMC <egoggin@emc.com>
Cc: Matthias Rudolph <matthias.rudolph@hds.com>
Cc: Brian King, IBM <brking@linux.vnet.ibm.com>
Cc: Yacine Kheddache <yacine@alyseo.com>
Cc: Srinivasan Ramani <srinivas.ramani@oracle.com>
Cc: Bart Brooks, Pivot3 <bartb@pivot3.com>
Cc: Martin George <marting@netapp.com>
Cc: Sean Stewart <sean.stewart@netapp.com>
Cc: Benjamin Marzinski <bmarzins@redhat.com>
Cc: Hannes Reinecke <hare@suse.de>
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 | 78 +++++++++++++++++++++++++-------------------------
1 file changed, 39 insertions(+), 39 deletions(-)
diff --git a/libmultipath/hwtable.c b/libmultipath/hwtable.c
index fb334ab..6e73e67 100644
--- a/libmultipath/hwtable.c
+++ b/libmultipath/hwtable.c
@@ -34,7 +34,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_QUEUE,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -125,7 +125,7 @@ static struct hwentry default_hw[] = {
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 12,
.minio = 100,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -140,7 +140,7 @@ static struct hwentry default_hw[] = {
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 12,
.minio = 100,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -155,7 +155,7 @@ static struct hwentry default_hw[] = {
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 18,
.minio = 100,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -170,7 +170,7 @@ static struct hwentry default_hw[] = {
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 18,
.minio = 100,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -185,7 +185,7 @@ static struct hwentry default_hw[] = {
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 18,
.minio = 100,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -200,7 +200,7 @@ static struct hwentry default_hw[] = {
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 12,
.minio = 100,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -214,7 +214,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 12,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -229,7 +229,7 @@ static struct hwentry default_hw[] = {
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 18,
.minio = 100,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -264,7 +264,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 6,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -295,7 +295,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 5,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -307,7 +307,7 @@ static struct hwentry default_hw[] = {
.selector = "queue-length 0",
.pgpolicy = MULTIBUS,
.pgfailback = FAILBACK_UNDEF,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.fast_io_fail = 5,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
@@ -337,7 +337,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 10,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -356,7 +356,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -369,7 +369,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_HDS,
.prio_args = NULL,
},
@@ -536,7 +536,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -550,7 +550,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -564,7 +564,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -578,7 +578,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -592,7 +592,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -606,7 +606,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -652,7 +652,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -667,7 +667,7 @@ static struct hwentry default_hw[] = {
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_QUEUE,
.minio = 100,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -682,7 +682,7 @@ static struct hwentry default_hw[] = {
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
.minio = 15,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -716,7 +716,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = (300 / DEFAULT_CHECKINT),
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -730,7 +730,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = (300 / DEFAULT_CHECKINT),
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -797,7 +797,7 @@ static struct hwentry default_hw[] = {
.no_path_retry = NO_PATH_RETRY_UNDEF,
.minio = 128,
.dev_loss = MAX_DEV_LOSS_TMO,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ONTAP,
.prio_args = NULL,
.retain_hwhandler = RETAIN_HWHANDLER_ON,
@@ -855,7 +855,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -916,7 +916,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -996,7 +996,7 @@ static struct hwentry default_hw[] = {
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
.minio = 100,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -1089,7 +1089,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_QUEUE,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -1102,7 +1102,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 12,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.minio = 100,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
@@ -1116,7 +1116,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_QUEUE,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -1129,7 +1129,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_QUEUE,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.prio_args = NULL,
},
@@ -1141,7 +1141,7 @@ static struct hwentry default_hw[] = {
.selector = "queue-length 0",
.pgpolicy = MULTIBUS,
.pgfailback = -FAILBACK_IMMEDIATE,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.fast_io_fail = 10,
.prio_name = DEFAULT_PRIO,
.no_path_retry = 0,
@@ -1155,7 +1155,7 @@ static struct hwentry default_hw[] = {
.hwhandler = DEFAULT_HWHANDLER,
.pgpolicy = MULTIBUS,
.pgfailback = -FAILBACK_IMMEDIATE,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
},
/*
* Violin Memory
@@ -1166,7 +1166,7 @@ static struct hwentry default_hw[] = {
.selector = "round-robin 0",
.pgpolicy = MULTIBUS,
.prio_name = PRIO_ALUA,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.minio = 100,
.rr_weight = RR_WEIGHT_PRIO,
.pgfailback = -FAILBACK_IMMEDIATE,
@@ -1181,7 +1181,7 @@ static struct hwentry default_hw[] = {
.product = "InfiniBox.*",
.prio_name = PRIO_ALUA,
.pgpolicy = GROUP_BY_PRIO,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.selector = "round-robin 0",
.features = DEFAULT_FEATURES,
.pgfailback = 30,
@@ -1203,7 +1203,7 @@ static struct hwentry default_hw[] = {
.pgpolicy = GROUP_BY_PRIO,
.no_path_retry = 10,
.dev_loss = 50,
- .checker_name = TUR,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ALUA,
.pgfailback = 30,
.minio = 128,
--
2.5.5
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [PATCH 4/4] multipath-tools: replace DIRECTIO with DEFAULT_CHECKER in hwtable
2016-06-23 13:42 [PATCH 0/4] make tur the default path checker Xose Vazquez Perez
` (2 preceding siblings ...)
2016-06-23 13:42 ` [PATCH 3/4] multipath-tools: replace TUR with DEFAULT_CHECKER in hwtable Xose Vazquez Perez
@ 2016-06-23 13:42 ` Xose Vazquez Perez
2016-07-08 6:52 ` [PATCH 0/4] make tur the default path checker Christophe Varoqui
4 siblings, 0 replies; 11+ messages in thread
From: Xose Vazquez Perez @ 2016-06-23 13:42 UTC (permalink / raw)
Cc: Matthias Rudolph, Xose Vazquez Perez, Yacine Kheddache,
device-mapper development, Brian King, IBM, Srinivasan Ramani,
Sean Stewart, Shyam Sundar, Bart Brooks, Pivot3,
Edward Goggin, EMC
DIRECTIO is unreliable under high load.
Cc: Shyam Sundar <g.shyamsundar@yahoo.co.in>
Cc: Edward Goggin, EMC <egoggin@emc.com>
Cc: Matthias Rudolph <matthias.rudolph@hds.com>
Cc: Brian King, IBM <brking@linux.vnet.ibm.com>
Cc: Yacine Kheddache <yacine@alyseo.com>
Cc: Srinivasan Ramani <srinivas.ramani@oracle.com>
Cc: Bart Brooks, Pivot3 <bartb@pivot3.com>
Cc: Martin George <marting@netapp.com>
Cc: Sean Stewart <sean.stewart@netapp.com>
Cc: Benjamin Marzinski <bmarzins@redhat.com>
Cc: Hannes Reinecke <hare@suse.de>
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 | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/libmultipath/hwtable.c b/libmultipath/hwtable.c
index 6e73e67..38487c1 100644
--- a/libmultipath/hwtable.c
+++ b/libmultipath/hwtable.c
@@ -95,7 +95,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 12,
- .checker_name = DIRECTIO,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -245,7 +245,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = DIRECTIO,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -324,7 +324,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = DIRECTIO,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -388,7 +388,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = DIRECTIO,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -622,7 +622,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = DIRECTIO,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -638,7 +638,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = DIRECTIO,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -702,7 +702,7 @@ static struct hwentry default_hw[] = {
.pgfailback = -FAILBACK_IMMEDIATE,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = (300 / DEFAULT_CHECKINT),
- .checker_name = DIRECTIO,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -816,7 +816,7 @@ static struct hwentry default_hw[] = {
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
.minio = 128,
- .checker_name = DIRECTIO,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = PRIO_ONTAP,
.prio_args = NULL,
},
@@ -836,7 +836,7 @@ static struct hwentry default_hw[] = {
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = 30,
.minio = 128,
- .checker_name = DIRECTIO,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -871,7 +871,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = DIRECTIO,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
@@ -949,7 +949,7 @@ static struct hwentry default_hw[] = {
.pgfailback = FAILBACK_UNDEF,
.rr_weight = RR_WEIGHT_NONE,
.no_path_retry = NO_PATH_RETRY_UNDEF,
- .checker_name = DIRECTIO,
+ .checker_name = DEFAULT_CHECKER,
.prio_name = DEFAULT_PRIO,
.prio_args = NULL,
},
--
2.5.5
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [PATCH 3/4] multipath-tools: replace TUR with DEFAULT_CHECKER in hwtable
2016-06-23 13:42 ` [PATCH 3/4] multipath-tools: replace TUR with DEFAULT_CHECKER in hwtable Xose Vazquez Perez
@ 2016-06-23 13:49 ` Hannes Reinecke
2016-06-23 14:13 ` Xose Vazquez Perez
2016-06-23 17:31 ` killall DEFAULT_* Xose Vazquez Perez
0 siblings, 2 replies; 11+ messages in thread
From: Hannes Reinecke @ 2016-06-23 13:49 UTC (permalink / raw)
To: Xose Vazquez Perez
Cc: Matthias Rudolph, Yacine Kheddache, device-mapper development,
Brian King, IBM, Srinivasan Ramani, Sean Stewart, Shyam Sundar,
Bart Brooks, Pivot3, Edward Goggin, EMC
On 06/23/2016 03:42 PM, Xose Vazquez Perez wrote:
> DEFAULT_CHECKER already is TUR
>
> Cc: Shyam Sundar <g.shyamsundar@yahoo.co.in>
> Cc: Edward Goggin, EMC <egoggin@emc.com>
> Cc: Matthias Rudolph <matthias.rudolph@hds.com>
> Cc: Brian King, IBM <brking@linux.vnet.ibm.com>
> Cc: Yacine Kheddache <yacine@alyseo.com>
> Cc: Srinivasan Ramani <srinivas.ramani@oracle.com>
> Cc: Bart Brooks, Pivot3 <bartb@pivot3.com>
> Cc: Martin George <marting@netapp.com>
> Cc: Sean Stewart <sean.stewart@netapp.com>
> Cc: Benjamin Marzinski <bmarzins@redhat.com>
> Cc: Hannes Reinecke <hare@suse.de>
> 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 | 78 +++++++++++++++++++++++++-------------------------
> 1 file changed, 39 insertions(+), 39 deletions(-)
>
> diff --git a/libmultipath/hwtable.c b/libmultipath/hwtable.c
> index fb334ab..6e73e67 100644
> --- a/libmultipath/hwtable.c
> +++ b/libmultipath/hwtable.c
> @@ -34,7 +34,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = -FAILBACK_IMMEDIATE,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_QUEUE,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> },
> @@ -125,7 +125,7 @@ static struct hwentry default_hw[] = {
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = 12,
> .minio = 100,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -140,7 +140,7 @@ static struct hwentry default_hw[] = {
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = 12,
> .minio = 100,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -155,7 +155,7 @@ static struct hwentry default_hw[] = {
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = 18,
> .minio = 100,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> },
> @@ -170,7 +170,7 @@ static struct hwentry default_hw[] = {
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = 18,
> .minio = 100,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -185,7 +185,7 @@ static struct hwentry default_hw[] = {
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = 18,
> .minio = 100,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -200,7 +200,7 @@ static struct hwentry default_hw[] = {
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = 12,
> .minio = 100,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -214,7 +214,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = 12,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> },
> @@ -229,7 +229,7 @@ static struct hwentry default_hw[] = {
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = 18,
> .minio = 100,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -264,7 +264,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = 6,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> },
> @@ -295,7 +295,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = 5,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> },
> @@ -307,7 +307,7 @@ static struct hwentry default_hw[] = {
> .selector = "queue-length 0",
> .pgpolicy = MULTIBUS,
> .pgfailback = FAILBACK_UNDEF,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .fast_io_fail = 5,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> @@ -337,7 +337,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = -FAILBACK_IMMEDIATE,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = 10,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -356,7 +356,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> },
> @@ -369,7 +369,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = -FAILBACK_IMMEDIATE,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_HDS,
> .prio_args = NULL,
> },
> @@ -536,7 +536,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> },
> @@ -550,7 +550,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> },
> @@ -564,7 +564,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> },
> @@ -578,7 +578,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = -FAILBACK_IMMEDIATE,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -592,7 +592,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> },
> @@ -606,7 +606,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = -FAILBACK_IMMEDIATE,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -652,7 +652,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = -FAILBACK_IMMEDIATE,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -667,7 +667,7 @@ static struct hwentry default_hw[] = {
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_QUEUE,
> .minio = 100,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -682,7 +682,7 @@ static struct hwentry default_hw[] = {
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> .minio = 15,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> },
> @@ -716,7 +716,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = -FAILBACK_IMMEDIATE,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = (300 / DEFAULT_CHECKINT),
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> },
> @@ -730,7 +730,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = -FAILBACK_IMMEDIATE,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = (300 / DEFAULT_CHECKINT),
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -797,7 +797,7 @@ static struct hwentry default_hw[] = {
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> .minio = 128,
> .dev_loss = MAX_DEV_LOSS_TMO,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ONTAP,
> .prio_args = NULL,
> .retain_hwhandler = RETAIN_HWHANDLER_ON,
> @@ -855,7 +855,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = FAILBACK_UNDEF,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -916,7 +916,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = -FAILBACK_IMMEDIATE,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -996,7 +996,7 @@ static struct hwentry default_hw[] = {
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_UNDEF,
> .minio = 100,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = DEFAULT_PRIO,
> .prio_args = NULL,
> },
> @@ -1089,7 +1089,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = -FAILBACK_IMMEDIATE,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_QUEUE,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -1102,7 +1102,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = -FAILBACK_IMMEDIATE,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = 12,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .minio = 100,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> @@ -1116,7 +1116,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = -FAILBACK_IMMEDIATE,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_QUEUE,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -1129,7 +1129,7 @@ static struct hwentry default_hw[] = {
> .pgfailback = -FAILBACK_IMMEDIATE,
> .rr_weight = RR_WEIGHT_NONE,
> .no_path_retry = NO_PATH_RETRY_QUEUE,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .prio_args = NULL,
> },
> @@ -1141,7 +1141,7 @@ static struct hwentry default_hw[] = {
> .selector = "queue-length 0",
> .pgpolicy = MULTIBUS,
> .pgfailback = -FAILBACK_IMMEDIATE,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .fast_io_fail = 10,
> .prio_name = DEFAULT_PRIO,
> .no_path_retry = 0,
> @@ -1155,7 +1155,7 @@ static struct hwentry default_hw[] = {
> .hwhandler = DEFAULT_HWHANDLER,
> .pgpolicy = MULTIBUS,
> .pgfailback = -FAILBACK_IMMEDIATE,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> },
> /*
> * Violin Memory
> @@ -1166,7 +1166,7 @@ static struct hwentry default_hw[] = {
> .selector = "round-robin 0",
> .pgpolicy = MULTIBUS,
> .prio_name = PRIO_ALUA,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .minio = 100,
> .rr_weight = RR_WEIGHT_PRIO,
> .pgfailback = -FAILBACK_IMMEDIATE,
> @@ -1181,7 +1181,7 @@ static struct hwentry default_hw[] = {
> .product = "InfiniBox.*",
> .prio_name = PRIO_ALUA,
> .pgpolicy = GROUP_BY_PRIO,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .selector = "round-robin 0",
> .features = DEFAULT_FEATURES,
> .pgfailback = 30,
> @@ -1203,7 +1203,7 @@ static struct hwentry default_hw[] = {
> .pgpolicy = GROUP_BY_PRIO,
> .no_path_retry = 10,
> .dev_loss = 50,
> - .checker_name = TUR,
> + .checker_name = DEFAULT_CHECKER,
> .prio_name = PRIO_ALUA,
> .pgfailback = 30,
> .minio = 128,
>
Why do you need to set it to 'DEFAULT_CHECKER'?
It's the default, right?
So it should be sufficient to just delete those lines...
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)
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 3/4] multipath-tools: replace TUR with DEFAULT_CHECKER in hwtable
2016-06-23 13:49 ` Hannes Reinecke
@ 2016-06-23 14:13 ` Xose Vazquez Perez
2016-06-23 17:31 ` killall DEFAULT_* Xose Vazquez Perez
1 sibling, 0 replies; 11+ messages in thread
From: Xose Vazquez Perez @ 2016-06-23 14:13 UTC (permalink / raw)
To: Hannes Reinecke
Cc: Matthias Rudolph, Yacine Kheddache, device-mapper development,
Brian King, IBM, Srinivasan Ramani, Sean Stewart, Shyam Sundar,
Bart Brooks, Pivot3, Edward Goggin, EMC
On 06/23/2016 03:49 PM, Hannes Reinecke wrote:
> On 06/23/2016 03:42 PM, Xose Vazquez Perez wrote:
>> DEFAULT_CHECKER already is TUR
>> ---
>> libmultipath/hwtable.c | 78 +++++++++++++++++++++++++-------------------------
>> 1 file changed, 39 insertions(+), 39 deletions(-)
>>
>> diff --git a/libmultipath/hwtable.c b/libmultipath/hwtable.c
>> index fb334ab..6e73e67 100644
>> --- a/libmultipath/hwtable.c
>> +++ b/libmultipath/hwtable.c
>> @@ -34,7 +34,7 @@ static struct hwentry default_hw[] = {
>> - .checker_name = TUR,
>> + .checker_name = DEFAULT_CHECKER,
>> .prio_name = PRIO_ALUA,
>> .pgfailback = 30,
>> .minio = 128,
>>
> Why do you need to set it to 'DEFAULT_CHECKER'?
> It's the default, right?
> So it should be sufficient to just delete those lines...
I was being wordy. As "checker_name = DEFAULT_CHECKER,"
was being used already by 3 devices. And I followed what
has been previously done.
Christophe?
^ permalink raw reply [flat|nested] 11+ messages in thread
* killall DEFAULT_*
2016-06-23 13:49 ` Hannes Reinecke
2016-06-23 14:13 ` Xose Vazquez Perez
@ 2016-06-23 17:31 ` Xose Vazquez Perez
1 sibling, 0 replies; 11+ messages in thread
From: Xose Vazquez Perez @ 2016-06-23 17:31 UTC (permalink / raw)
To: Hannes Reinecke
Cc: Matthias Rudolph, Yacine Kheddache, device-mapper development,
Brian King, IBM, Srinivasan Ramani, Sean Stewart, Shyam Sundar,
Bart Brooks, Pivot3, Edward Goggin, EMC
On 06/23/2016 03:49 PM, Hannes Reinecke wrote:
> Why do you need to set it to 'DEFAULT_CHECKER'?
> It's the default, right?
> So it should be sufficient to just delete those lines...
More candidates to be deleted ???
1 .minio = DEFAULT_MINIO,
1 .minio_rq = DEFAULT_MINIO_RQ,
28 .prio_name = DEFAULT_PRIO,
44 .hwhandler = DEFAULT_HWHANDLER,
48 .features = DEFAULT_FEATURES,
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 0/4] make tur the default path checker
2016-06-23 13:42 [PATCH 0/4] make tur the default path checker Xose Vazquez Perez
` (3 preceding siblings ...)
2016-06-23 13:42 ` [PATCH 4/4] multipath-tools: replace DIRECTIO with DEFAULT_CHECKER in hwtable Xose Vazquez Perez
@ 2016-07-08 6:52 ` Christophe Varoqui
2016-07-08 12:51 ` Xose Vazquez Perez
4 siblings, 1 reply; 11+ messages in thread
From: Christophe Varoqui @ 2016-07-08 6:52 UTC (permalink / raw)
To: Xose Vazquez Perez
Cc: Matthias Rudolph, Yacine Kheddache, device-mapper development,
Brian King, IBM, Srinivasan Ramani, Sean Stewart, Shyam Sundar,
Bart Brooks, Pivot3, Edward Goggin, EMC
[-- Attachment #1.1: Type: text/plain, Size: 1639 bytes --]
Patches 1 and 2 are merged.
I commited a patch to delete DIRECTIO and TUR checker_name settings to
replace patch 3 and 4.
Thanks.
On Thu, Jun 23, 2016 at 3:42 PM, Xose Vazquez Perez <xose.vazquez@gmail.com>
wrote:
> Based on previous Hannes's work.
> He says:
> "For years I've been telling our customers to use the 'tur' checker
> as the current default 'directio' will cause spurious path failures
> under high load."
>
> Xose Vazquez Perez (4):
> multipath-tools: change the default path checker from directio to tur
> multipath-tools: update path checker info in multipath.conf.5
> multipath-tools: replace TUR with DEFAULT_CHECKER in hwtable
> multipath-tools: replace DIRECTIO with DEFAULT_CHECKER in hwtable
>
> libmultipath/checkers.h | 2 +-
> libmultipath/hwtable.c | 100
> ++++++++++++++++++++++-----------------------
> multipath/multipath.conf.5 | 8 ++--
> 3 files changed, 56 insertions(+), 54 deletions(-)
>
> Cc: Shyam Sundar <g.shyamsundar@yahoo.co.in>
> Cc: Edward Goggin, EMC <egoggin@emc.com>
> Cc: Matthias Rudolph <matthias.rudolph@hds.com>
> Cc: Brian King, IBM <brking@linux.vnet.ibm.com>
> Cc: Yacine Kheddache <yacine@alyseo.com>
> Cc: Srinivasan Ramani <srinivas.ramani@oracle.com>
> Cc: Bart Brooks, Pivot3 <bartb@pivot3.com>
> Cc: Martin George <marting@netapp.com>
> Cc: Sean Stewart <sean.stewart@netapp.com>
> Cc: Benjamin Marzinski <bmarzins@redhat.com>
> Cc: Hannes Reinecke <hare@suse.de>
> 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>
> --
> 2.5.5
>
>
[-- Attachment #1.2: Type: text/html, Size: 2863 bytes --]
[-- Attachment #2: Type: text/plain, Size: 0 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 0/4] make tur the default path checker
2016-07-08 6:52 ` [PATCH 0/4] make tur the default path checker Christophe Varoqui
@ 2016-07-08 12:51 ` Xose Vazquez Perez
2016-07-08 13:00 ` Christophe Varoqui
0 siblings, 1 reply; 11+ messages in thread
From: Xose Vazquez Perez @ 2016-07-08 12:51 UTC (permalink / raw)
To: Christophe Varoqui
Cc: Matthias Rudolph, Yacine Kheddache, device-mapper development,
Brian King, IBM, Srinivasan Ramani, Sean Stewart, Shyam Sundar,
Bart Brooks, Pivot3, Edward Goggin, EMC
On 07/08/2016 08:52 AM, Christophe Varoqui wrote:
> Patches 1 and 2 are merged.
> I commited a patch to delete DIRECTIO and TUR checker_name
> settings to replace patch 3 and 4.
You should also have deleted these lines:
" .checker_name = DEFAULT_CHECKER," x3
I will send a path.
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH 0/4] make tur the default path checker
2016-07-08 12:51 ` Xose Vazquez Perez
@ 2016-07-08 13:00 ` Christophe Varoqui
0 siblings, 0 replies; 11+ messages in thread
From: Christophe Varoqui @ 2016-07-08 13:00 UTC (permalink / raw)
To: Xose Vazquez Perez
Cc: Matthias Rudolph, Yacine Kheddache, device-mapper development,
Brian King, IBM, Srinivasan Ramani, Sean Stewart, Shyam Sundar,
Bart Brooks, Pivot3, Edward Goggin, EMC
[-- Attachment #1.1: Type: text/plain, Size: 414 bytes --]
True, done.
On Fri, Jul 8, 2016 at 2:51 PM, Xose Vazquez Perez <xose.vazquez@gmail.com>
wrote:
> On 07/08/2016 08:52 AM, Christophe Varoqui wrote:
>
> > Patches 1 and 2 are merged.
> > I commited a patch to delete DIRECTIO and TUR checker_name
> > settings to replace patch 3 and 4.
>
> You should also have deleted these lines:
> " .checker_name = DEFAULT_CHECKER," x3
>
> I will send a path.
>
[-- Attachment #1.2: Type: text/html, Size: 792 bytes --]
[-- Attachment #2: Type: text/plain, Size: 0 bytes --]
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2016-07-08 13:00 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-06-23 13:42 [PATCH 0/4] make tur the default path checker Xose Vazquez Perez
2016-06-23 13:42 ` [PATCH 1/4] multipath-tools: change the default path checker from directio to tur Xose Vazquez Perez
2016-06-23 13:42 ` [PATCH 2/4] multipath-tools: update path checker info in multipath.conf.5 Xose Vazquez Perez
2016-06-23 13:42 ` [PATCH 3/4] multipath-tools: replace TUR with DEFAULT_CHECKER in hwtable Xose Vazquez Perez
2016-06-23 13:49 ` Hannes Reinecke
2016-06-23 14:13 ` Xose Vazquez Perez
2016-06-23 17:31 ` killall DEFAULT_* Xose Vazquez Perez
2016-06-23 13:42 ` [PATCH 4/4] multipath-tools: replace DIRECTIO with DEFAULT_CHECKER in hwtable Xose Vazquez Perez
2016-07-08 6:52 ` [PATCH 0/4] make tur the default path checker Christophe Varoqui
2016-07-08 12:51 ` Xose Vazquez Perez
2016-07-08 13:00 ` Christophe Varoqui
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).