<div dir="ltr">Agreed.<div>Waiting for Ben's ack before merging.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jun 3, 2016 at 9:14 AM, Hannes Reinecke <span dir="ltr"><<a href="mailto:hare@suse.de" target="_blank">hare@suse.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">For years I've been telling our customers to use the 'tur' checker<br>
as the current default 'directio' will cause spurious path failures<br>
under high load.<br>
<br>
And for several versions (years, even) the linux kernel has the ability<br>
to correctly detect the device handler, so we should be making<br>
'retain_hw_handler' the default.<br>
And if we do this we also want to enable 'detect_prio', to ensure<br>
we pick the correct prioritizer.<br>
<br>
So this patch updates the default setting to always enable<br>
'retain_hw_handler' and 'detect_prio' and switch to 'tur'<br>
as the default path checker.<br>
<br>
Signed-off-by: Hannes Reinecke <<a href="mailto:hare@suse.de">hare@suse.de</a>><br>
---<br>
libmultipath/checkers.h | 2 +-<br>
libmultipath/defaults.h | 4 ++--<br>
multipath/multipath.conf.5 | 4 ++--<br>
3 files changed, 5 insertions(+), 5 deletions(-)<br>
<br>
diff --git a/libmultipath/checkers.h b/libmultipath/checkers.h<br>
index a935b3f..374c826 100644<br>
--- a/libmultipath/checkers.h<br>
+++ b/libmultipath/checkers.h<br>
@@ -85,7 +85,7 @@ enum path_check_state {<br>
#define READSECTOR0 "readsector0"<br>
#define CCISS_TUR "cciss_tur"<br>
<br>
-#define DEFAULT_CHECKER DIRECTIO<br>
+#define DEFAULT_CHECKER TUR<br>
<br>
#define ASYNC_TIMEOUT_SEC 30<br>
<br>
diff --git a/libmultipath/defaults.h b/libmultipath/defaults.h<br>
index 96f5a2c..4948271 100644<br>
--- a/libmultipath/defaults.h<br>
+++ b/libmultipath/defaults.h<br>
@@ -16,8 +16,8 @@<br>
#define DEFAULT_FIND_MULTIPATHS 0<br>
#define DEFAULT_FAST_IO_FAIL 5<br>
#define DEFAULT_DEV_LOSS_TMO 600<br>
-#define DEFAULT_RETAIN_HWHANDLER RETAIN_HWHANDLER_OFF<br>
-#define DEFAULT_DETECT_PRIO DETECT_PRIO_OFF<br>
+#define DEFAULT_RETAIN_HWHANDLER RETAIN_HWHANDLER_ON<br>
+#define DEFAULT_DETECT_PRIO DETECT_PRIO_ON<br>
#define DEFAULT_DEFERRED_REMOVE DEFERRED_REMOVE_OFF<br>
#define DEFAULT_DELAY_CHECKS DELAY_CHECKS_OFF<br>
#define DEFAULT_UEVENT_STACKSIZE 256<br>
diff --git a/multipath/multipath.conf.5 b/multipath/multipath.conf.5<br>
index aaaa01b..20a2304 100644<br>
--- a/multipath/multipath.conf.5<br>
+++ b/multipath/multipath.conf.5<br>
@@ -295,7 +295,7 @@ Check the path state for LSI/Engenio/NetApp E-Series RDAC storage controller.<br>
.B directio<br>
Read the first sector with direct I/O.<br>
.TP<br>
-Default value is \fIdirectio\fR.<br>
+Default value is \fItur\fR.<br>
.RE<br>
.TP<br>
.B failback<br>
@@ -463,7 +463,7 @@ are supported, or the<br>
prioritizer if not. If set to<br>
.I no<br>
, the prioritizer will be selected as usual. Default is<br>
-.I no<br>
+.I yes<br>
.TP<br>
.B force_sync<br>
If set to<br>
<span class="HOEnZb"><font color="#888888">--<br>
2.6.6<br>
<br>
</font></span></blockquote></div><br></div>