1MULTIPATH.CONF(5) File Formats Manual MULTIPATH.CONF(5)
2
3
4
6 multipath.conf - multipath daemon configuration file.
7
9 /etc/multipath.conf is the configuration file for the multipath daemon.
10 It is used to overwrite the built-in configuration table of multipathd.
11 Any line whose first non-white-space character is a '#' is considered a
12 comment line. Empty lines are ignored.
13
14 Currently used multipathd configuration can be displayed with the mul‐
15 tipath -t or multipathd show config command.
16
18 The configuration file contains entries of the form:
19
20 <section> {
21 <attribute> <value>
22 ...
23 <subsection> {
24 <attribute> <value>
25 ...
26 }
27 }
28
29 Each section contains one or more attributes or subsections. The recog‐
30 nized keywords for attributes or subsections depend on the section in
31 which they occur.
32
33 <attribute> and <value> must be on a single line. <attribute> is one
34 of the keywords listed in this man page. <value> is either a simple
35 word (containing no whitespace and none of the characters '"', '#', and
36 '!') or one string enclosed in double quotes ("..."). Outside a quoted
37 string, text starting with '#', and '!' is regarded as a comment and
38 ignored until the end of the line. Inside a quoted string, '#' and '!'
39 are normal characters, and whitespace is preserved. To represent a
40 double quote character inside a double quoted string, use two consecu‐
41 tive double quotes ('""'). Thus '2.5" SSD' can be written as "2.5""
42 SSD".
43
44 Opening braces ('{') must follow the (sub)section name on the same
45 line. Closing braces ('}') that mark the end of a (sub)section must be
46 the only non-whitespace character on the line. Whitespace is ignored
47 except inside double quotes, thus the indentation shown in the above
48 example is helpful for human readers but not mandatory.
49
50 Note on regular expressions: The multipath.conf syntax allows many
51 attribute values to be specified as POSIX Extended Regular Expressions
52 (see regex(7)). These regular expressions are case sensitive and not
53 anchored, thus the expression "bar" matches "barbie", "rhabarber", and
54 "wunderbar", but not "Barbie". To avoid unwanted substring matches,
55 standard regular expression syntax using the special characters "^" and
56 "$" can be used.
57
58 The following section keywords are recognized:
59
60 defaults This section defines default values for attributes
61 which are used whenever no values are given in the
62 appropriate device or multipath sections.
63
64 blacklist This section defines which devices should be excluded
65 from the multipath topology discovery.
66
67 blacklist_exceptions
68 This section defines which devices should be included
69 in the multipath topology discovery, despite being
70 listed in the blacklist section.
71
72 multipaths This section defines the multipath topologies. They
73 are indexed by a World Wide Identifier(WWID). For
74 details on the WWID generation see section WWID gener‐
75 ation below. Attributes set in this section take
76 precedence over all others.
77
78 devices This section defines the device-specific settings.
79 Devices are identified by vendor, product, and revi‐
80 sion.
81
82 overrides This section defines values for attributes that should
83 override the device-specific settings for all devices.
84
86 The defaults section recognizes the following keywords:
87
88 verbosity Default verbosity. Higher values increase the ver‐
89 bosity level. Valid levels are between 0 and 6.
90
91 The default is: 2
92
93 polling_interval Interval between two path checks in seconds. For prop‐
94 erly functioning paths, the interval between checks
95 will gradually increase to max_polling_interval. This
96 value will be overridden by the WatchdogSec setting in
97 the multipathd.service definition if systemd is used.
98
99 The default is: 5
100
101 max_polling_interval
102 Maximal interval between two path checks in seconds.
103
104 The default is: 4 * polling_interval
105
106 reassign_maps Enable reassigning of device-mapper maps. With this
107 option multipathd will remap existing device-mapper
108 maps to always point to multipath device, not the
109 underlying block devices. Possible values are yes and
110 no.
111
112 The default is: no
113
114 multipath_dir Directory where the dynamic shared objects are stored.
115 Defined at compile time, commonly /lib64/multipath/ or
116 /lib/multipath/.
117
118 The default is: <system dependent>
119
120 path_selector The default path selector algorithm to use; they are
121 offered by the kernel multipath target. There are
122 three selector algorithms:
123
124 round-robin 0
125 Loop through every path in the path group,
126 sending the same amount of I/O to each.
127 Some aspects of behavior can be controlled
128 with the attributes: rr_min_io,
129 rr_min_io_rq and rr_weight.
130
131 queue-length 0
132 (Since 2.6.31 kernel) Choose the path for
133 the next bunch of I/O based on the amount
134 of outstanding I/O to the path.
135
136 service-time 0
137 (Since 2.6.31 kernel) Choose the path for
138 the next bunch of I/O based on the amount
139 of outstanding I/O to the path and its
140 relative throughput.
141
142 The default is: service-time 0
143
144 path_grouping_policy
145 The default path grouping policy to apply to unspeci‐
146 fied multipaths. Possible values are:
147
148 failover One path per priority group.
149
150 multibus All paths in one priority group.
151
152 group_by_serial
153 One priority group per serial number.
154
155 group_by_prio
156 One priority group per priority value.
157 Priorities are determined by callout pro‐
158 grams specified as a global, per-con‐
159 troller or per-multipath option in the
160 configuration file.
161
162 group_by_node_name
163 One priority group per target node name.
164 Target node names are fetched in
165 /sys/class/fc_transport/target*/node_name.
166
167 The default is: failover
168
169 uid_attrs Setting this option activates merging uevents by WWID,
170 which may improve uevent processing effiency. More‐
171 over, it's an alternative method to configure the udev
172 properties to use for determining unique path identi‐
173 fiers (WWIDs).
174
175 The value of this option is a space separated list of
176 records like "type:ATTR", where type is matched
177 against the beginning of the device node name (e.g.
178 sd:ATTR matches sda), and ATTR is the name of the udev
179 property to use for matching devices.
180
181 If this option is configured and matches the device
182 node name of a device, it overrides any other config‐
183 ured methods for determining the WWID for this
184 device.
185
186 The default is: <unset>. To enable uevent merging, set
187 it e.g. to "sd:ID_SERIAL dasd:ID_UID nvme:ID_WWN".
188
189 uid_attribute The udev attribute providing a unique path identifier
190 (WWID). If uid_attribute is set to the empty string,
191 WWID determination is done using the sysfs method
192 rather then using udev (not recommended in production;
193 see WWID generation below).
194
195 The default is: ID_SERIAL, for SCSI devices
196
197 The default is: ID_UID, for DASD devices
198
199 The default is: ID_WWN, for NVMe devices
200
201 getuid_callout (Superseded by uid_attribute) The default program and
202 args to callout to obtain a unique path identifier.
203 Should be specified with an absolute path.
204
205 The default is: <unset>
206
207 prio The name of the path priority routine. The specified
208 routine should return a numeric value specifying the
209 relative priority of this path. Higher number have a
210 higher priority. "none" is a valid value. Currently
211 the following path priority routines are implemented:
212
213 const Return a constant priority of 1.
214
215 sysfs Use the sysfs attributes access_state and
216 preferred_path to generate the path prior‐
217 ity. This prioritizer accepts the optional
218 prio_arg exclusive_pref_bit.
219
220 emc (Hardware-dependent) Generate the path
221 priority for DGC class arrays as CLARiiON
222 CX/AX and EMC VNX and Unity families.
223
224 alua (Hardware-dependent) Generate the path
225 priority based on the SCSI-3 ALUA set‐
226 tings. This prioritizer accepts the
227 optional prio_arg exclusive_pref_bit.
228
229 ontap (Hardware-dependent) Generate the path
230 priority for NetApp ONTAP class and OEM
231 arrays as IBM NSeries.
232
233 rdac (Hardware-dependent) Generate the path
234 priority for LSI/Engenio/NetApp RDAC class
235 as NetApp SANtricity E/EF Series, and OEM
236 arrays from IBM DELL SGI STK and SUN.
237
238 hp_sw (Hardware-dependent) Generate the path
239 priority for HP/COMPAQ/DEC HSG80 and
240 MSA/HSV arrays with Active/Standby mode
241 exclusively.
242
243 hds (Hardware-dependent) Generate the path
244 priority for Hitachi AMS families of
245 arrays other than AMS 2000.
246
247 random Generate a random priority between 1 and
248 10.
249
250 weightedpath
251 Generate the path priority based on the
252 regular expression and the priority pro‐
253 vided as argument. Requires prio_args key‐
254 word.
255
256 path_latency
257 Generate the path priority based on a
258 latency algorithm. Requires prio_args
259 keyword.
260
261 ana (Hardware-dependent) Generate the path
262 priority based on the NVMe ANA settings.
263
264 datacore (Hardware-dependent) Generate the path
265 priority for some DataCore storage arrays.
266 Requires prio_args keyword.
267
268 iet (iSCSI only) Generate path priority for
269 iSCSI targets based on IP address.
270 Requires prio_args keyword.
271
272 The default depends on the detect_prio setting: If
273 detect_prio is yes (default), the default priority
274 algorithm is sysfs (except for NetAPP E-Series, where
275 it is alua). If detect_prio is no, the default prior‐
276 ity algorithm is const.
277
278 prio_args Arguments to pass to to the prio function. This only
279 applies to certain prioritizers:
280
281 weighted Needs a value of the form "<hbtl|dev‐
282 name|serial|wwn> <regex1> <prio1> <regex2>
283 <prio2> ..."
284
285 hbtl Regex can be of SCSI H:B:T:L for‐
286 mat. For example: 1:0:.:. ,
287 *:0:0:.
288
289 devname Regex can be of device name for‐
290 mat. For example: sda , sd.e
291
292 serial Regex can be of serial number for‐
293 mat. For example: .*J1FR.*324 .
294 The serial can be looked up
295 through sysfs or by running multi‐
296 pathd show paths format "%z". For
297 example: 0395J1FR904324
298
299 wwn Regex can be of the form
300 "host_wwnn:host_wwpn:tar‐
301 get_wwnn:target_wwpn" these values
302 can be looked up through sysfs or
303 by running multipathd show paths
304 format "%N:%R:%n:%r". For example:
305 0x200100e08ba0aea0:0x210100e08ba0aea0:.*:.*
306 , .*:.*:iqn.2009-10.com.red‐
307 hat.msp.lab.ask-06:.*
308
309 path_latency
310 Needs a value of the form "io_num=<20>
311 base_num=<10>"
312
313 io_num The number of read IOs sent to the
314 current path continuously, used to
315 calculate the average path
316 latency. Valid Values: Integer,
317 [2, 200].
318
319 base_num
320 The base number value of logarith‐
321 mic scale, used to partition dif‐
322 ferent priority ranks. Valid Val‐
323 ues: Integer, [2, 10]. And Max
324 average latency value is 100s, min
325 average latency value is 1us. For
326 example: If base_num=10, the paths
327 will be grouped in priority groups
328 with path latency <=1us, (1us,
329 10us], (10us, 100us], (100us,
330 1ms], (1ms, 10ms], (10ms, 100ms],
331 (100ms, 1s], (1s, 10s], (10s,
332 100s], >100s.
333
334 alua If exclusive_pref_bit is set, paths with
335 the preferred path bit set will always be
336 in their own path group.
337
338 sysfs If exclusive_pref_bit is set, paths with
339 the preferred path bit set will always be
340 in their own path group.
341
342 datacore
343
344 preferredsds
345 (Mandatory) The preferred "SDS
346 name".
347
348 timeout (Optional) The timeout for the
349 INQUIRY, in ms.
350
351 iet
352
353 preferredip=...
354 (Mandatory) Th preferred IP
355 address, in dotted decimal nota‐
356 tion, for iSCSI targets.
357
358 The default is: <unset>
359
360 features Specify any device-mapper features to be used. Syntax
361 is num list where num is the number, between 0 and 8,
362 of features in list. Possible values for the feature
363 list are:
364
365 queue_if_no_path
366 (Deprecated, superseded by no_path_retry)
367 Queue I/O if no path is active. Identical
368 to the no_path_retry with queue value. If
369 both this feature and no_path_retry are
370 set, the latter value takes precedence.
371 See KNOWN ISSUES.
372
373 pg_init_retries <times>
374 (Since kernel 2.6.24) Number of times to
375 retry pg_init, it must be between 1 and
376 50.
377
378 pg_init_delay_msecs <msecs>
379 (Since kernel 2.6.38) Number of msecs
380 before pg_init retry, it must be between 0
381 and 60000.
382
383 queue_mode <mode>
384 (Since kernel 4.8) Select the the queueing
385 mode per multipath device. <mode> can be
386 bio, rq or mq, which corresponds to bio-
387 based, request-based, and block-multiqueue
388 (blk-mq) request-based, respectively. The
389 default depends on the kernel parameter
390 dm_mod.use_blk_mq. It is mq if the latter
391 is set, and rq otherwise.
392
393 The default is: <unset>
394
395 path_checker The default method used to determine the paths state.
396 Possible values are:
397
398 readsector0 (Deprecated) Read the first sector of the
399 device. This checker is being deprecated,
400 please use tur instead.
401
402 tur Issue a TEST UNIT READY command to the
403 device.
404
405 emc_clariion
406 (Hardware-dependent) Query the DGC/EMC
407 specific EVPD page 0xC0 to determine the
408 path state for CLARiiON CX/AX and EMC VNX
409 and Unity arrays families.
410
411 hp_sw (Hardware-dependent) Check the path state
412 for HP/COMPAQ/DEC HSG80 and MSA/HSV arrays
413 with Active/Standby mode exclusively.
414
415 rdac (Hardware-dependent) Check the path state
416 for LSI/Engenio/NetApp RDAC class as
417 NetApp SANtricity E/EF Series, and OEM
418 arrays from IBM DELL SGI STK and SUN.
419
420 directio (Deprecated) Read the first sector with
421 direct I/O. If you have a large number of
422 paths, or many AIO users on a system, you
423 may need to use sysctl to increase fs.aio-
424 max-nr. This checker is being deprecated,
425 it could cause spurious path failures
426 under high load. Please use tur instead.
427
428 cciss_tur (Hardware-dependent) Check the path state
429 for HP/COMPAQ Smart Array(CCISS) con‐
430 trollers.
431
432 none Do not check the device, fallback to use
433 the values retrieved from sysfs
434
435 The default is: tur
436
437 alias_prefix The user_friendly_names prefix.
438
439 The default is: mpath
440
441 failback Tell multipathd how to manage path group failback. To
442 select immediate or a value, it's mandatory that the
443 device has support for a working prioritizer.
444
445 immediate Immediately failback to the highest prior‐
446 ity pathgroup that contains active paths.
447
448 manual Do not perform automatic failback.
449
450 followover Used to deal with multiple computers
451 accessing the same Active/Passive storage
452 devices. Only perform automatic failback
453 when the first path of a pathgroup becomes
454 active. This keeps a cluster node from
455 automatically failing back when another
456 node requested the failover.
457
458 values > 0 Deferred failback (time to defer in sec‐
459 onds).
460
461 The default is: manual
462
463 rr_min_io Number of I/O requests to route to a path before
464 switching to the next in the same path group. This is
465 only for Block I/O(BIO) based multipath and only apply
466 to round-robin path_selector.
467
468 The default is: 1000
469
470 rr_min_io_rq Number of I/O requests to route to a path before
471 switching to the next in the same path group. This is
472 only for Request based multipath and only apply to
473 round-robin path_selector.
474
475 The default is: 1
476
477 max_fds Specify the maximum number of file descriptors that
478 can be opened by multipath and multipathd. This is
479 equivalent to ulimit -n. A value of max will set this
480 to the system limit from /proc/sys/fs/nr_open. If this
481 is not set, the maximum number of open fds is taken
482 from the calling process. It is usually 1024. To be
483 safe, this should be set to the maximum number of
484 paths plus 32, if that number is greated than 1024.
485
486 The default is: max
487
488 rr_weight If set to priorities the multipath configurator will
489 assign path weights as "path prio * rr_min_io". Possi‐
490 ble values are priorities or uniform . Only apply to
491 round-robin path_selector.
492
493 The default is: uniform
494
495 no_path_retry Specify what to do when all paths are down. Possible
496 values are:
497
498 value > 0 Number of retries until disable I/O queue‐
499 ing.
500
501 fail For immediate failure (no I/O queueing).
502
503 queue For never stop I/O queueing, similar to
504 queue_if_no_path. See KNOWN ISSUES.
505
506 The default is: fail
507
508 queue_without_daemon
509 If set to no , when multipathd stops, queueing will be
510 turned off for all devices. This is useful for
511 devices that set no_path_retry. If a machine is shut
512 down while all paths to a device are down, it is pos‐
513 sible to hang waiting for I/O to return from the
514 device after multipathd has been stopped. Without mul‐
515 tipathd running, access to the paths cannot be
516 restored, and the kernel cannot be told to stop queue‐
517 ing I/O. Setting queue_without_daemon to no , avoids
518 this problem.
519
520 The default is: no
521
522 checker_timeout Specify the timeout to use for path checkers and pri‐
523 oritizers that issue SCSI commands with an explicit
524 timeout, in seconds.
525
526 The default is: in /sys/block/sd<x>/device/timeout
527
528 flush_on_last_del
529 If set to yes , multipathd will disable queueing when
530 the last path to a device has been deleted.
531
532 The default is: no
533
534 user_friendly_names
535 If set to yes , using the bindings file /etc/multi‐
536 path/bindings to assign a persistent and unique alias
537 to the multipath, in the form of mpath<n>. If set to
538 no use the WWID as the alias. In either case this be
539 will be overridden by any specific aliases in the mul‐
540 tipaths section.
541
542 The default is: no
543
544 fast_io_fail_tmo Specify the number of seconds the SCSI layer will wait
545 after a problem has been detected on a FC remote port
546 before failing I/O to devices on that remote port.
547 This should be smaller than dev_loss_tmo. Setting this
548 to off will disable the timeout.
549
550 The default is: 5
551
552 dev_loss_tmo Specify the number of seconds the SCSI layer will wait
553 after a problem has been detected on a FC remote port
554 before removing it from the system. This can be set to
555 "infinity" which sets it to the max value of
556 2147483647 seconds, or 68 years. It will be automati‐
557 cally adjusted to the overall retry interval
558 no_path_retry * polling_interval if a number of
559 retries is given with no_path_retry and the overall
560 retry interval is longer than the specified
561 dev_loss_tmo value. The Linux kernel will cap this
562 value to 600 if fast_io_fail_tmo is not set. See KNOWN
563 ISSUES.
564
565 The default is: 600
566
567 bindings_file The full pathname of the binding file to be used when
568 the user_friendly_names option is set.
569
570 The default is: /etc/multipath/bindings
571
572 wwids_file The full pathname of the WWIDs file, which is used by
573 multipath to keep track of the WWIDs for LUNs it has
574 created multipath devices on in the past.
575
576 The default is: /etc/multipath/wwids
577
578 prkeys_file The full pathname of the prkeys file, which is used by
579 multipathd to keep track of the persistent reservation
580 key used for a specific WWID, when reservation_key is
581 set to file.
582
583 The default is: /etc/multipath/prkeys
584
585 log_checker_err If set to once , multipathd logs the first path
586 checker error at logging level 2. Any later errors are
587 logged at level 3 until the device is restored. If set
588 to always , multipathd always logs the path checker
589 error at logging level 2.
590
591 The default is: always
592
593 reservation_key This is the service action reservation key used by
594 mpathpersist. It must be set for all multipath devices
595 using persistent reservations, and it must be the same
596 as the RESERVATION KEY field of the PERSISTENT RESERVE
597 OUT parameter list which contains an 8-byte value pro‐
598 vided by the application client to the device server
599 to identify the I_T nexus. If the --param-aptpl option
600 is used when registering the key with mpathpersist,
601 :aptpl must be appended to the end of the reservation
602 key.
603
604 Alternatively, this can be set to file, which will
605 store the RESERVATION KEY registered by mpathpersist
606 in the prkeys_file. multipathd will then use this key
607 to register additional paths as they appear. When the
608 registration is removed, the RESERVATION KEY is
609 removed from the prkeys_file. The prkeys file will
610 automatically keep track of whether the key was regis‐
611 tered with --param-aptpl.
612
613 The default is: <unset>
614
615 all_tg_pt Set the 'all targets ports' flag when registering keys
616 with mpathpersist. Some arrays automatically set and
617 clear registration keys on all target ports from a
618 host, instead of per target port per host. The
619 ALL_TG_PT flag must be set to successfully use mpath‐
620 persist on these arrays. Setting this option is iden‐
621 tical to calling mpathpersist with --param-alltgpt
622
623 The default is: no
624
625 retain_attached_hw_handler
626 (Obsolete for kernels >= 4.3) If set to yes and the
627 SCSI layer has already attached a hardware_handler to
628 the device, multipath will not force the device to use
629 the hardware_handler specified by mutipath.conf. If
630 the SCSI layer has not attached a hardware handler,
631 multipath will continue to use its configured hardware
632 handler.
633
634 The default is: yes
635
636 Important Note: Linux kernel 4.3 or newer always
637 behaves as if "retain_attached_hw_handler yes" was
638 set.
639
640 detect_prio If set to yes , multipath will try to detect if the
641 device supports SCSI-3 ALUA. If so, the device will
642 automatically use the sysfs prioritizer if the
643 required sysf attributes access_state and pre‐
644 ferred_path are supported, or the alua prioritizer if
645 not. If set to no , the prioritizer will be selected
646 as usual.
647
648 The default is: yes
649
650 detect_checker if set to yes , multipath will try to detect if the
651 device supports SCSI-3 ALUA. If so, the device will
652 automatically use the tur checker. If set to no , the
653 checker will be selected as usual.
654
655 The default is: yes
656
657 force_sync If set to yes , multipathd will call the path checkers
658 in sync mode only. This means that only one checker
659 will run at a time. This is useful in the case where
660 many multipathd checkers running in parallel causes
661 significant CPU pressure.
662
663 The default is: no
664
665 strict_timing If set to yes , multipathd will start a new path
666 checker loop after exactly one second, so that each
667 path check will occur at exactly polling_interval sec‐
668 onds. On busy systems path checks might take longer
669 than one second; here the missing ticks will be
670 accounted for on the next round. A warning will be
671 printed if path checks take longer than polling_inter‐
672 val seconds.
673
674 The default is: no
675
676 deferred_remove If set to yes , multipathd will do a deferred remove
677 instead of a regular remove when the last path device
678 has been deleted. This means that if the multipath
679 device is still in use, it will be freed when the last
680 user closes it. If path is added to the multipath
681 device before the last user closes it, the deferred
682 remove will be canceled.
683
684 The default is: no
685
686 partition_delimiter
687 This parameter controls how multipath chooses the
688 names of partition devices of multipath maps if a mul‐
689 tipath map is renamed (e.g. if a map alias is added or
690 changed). If this parameter is set to a string other
691 than "/UNSET/" (even the empty string), multipath
692 inserts that string between device name and partition
693 number to construct the partition device name. Other‐
694 wise (i.e. if this parameter is unset or has the value
695 "/UNSET/"), the behavior depends on the map name: if
696 it ends in a digit, a "p" is inserted between name and
697 partition number; otherwise, the partition number is
698 simply appended. Distributions may use a non-null
699 default value for this option; in this case, the user
700 must set it to "/UNSET/" to obtain the original
701 <unset> behavior. Use multipath -T to check the cur‐
702 rent settings.
703
704 The default is: <unset>
705
706 config_dir If set to anything other than "", multipath will
707 search this directory alphabetically for file ending
708 in ".conf" and it will read configuration information
709 from them, just as if it was in /etc/multipath.conf.
710 config_dir must either be "" or a fully qualified
711 directory name.
712
713 The default is: /etc/multipath/conf.d/
714
715 san_path_err_threshold
716 If set to a value greater than 0, multipathd will
717 watch paths and check how many times a path has been
718 failed due to errors.If the number of failures on a
719 particular path is greater then the
720 san_path_err_threshold, then the path will not rein‐
721 state till san_path_err_recovery_time. These path
722 failures should occur within a san_path_err_for‐
723 get_rate checks, if not we will consider the path is
724 good enough to reinstantate. See "Shaky paths detec‐
725 tion" below.
726
727 The default is: no
728
729 san_path_err_forget_rate
730 If set to a value greater than 0, multipathd will
731 check whether the path failures has exceeded the
732 san_path_err_threshold within this many checks i.e
733 san_path_err_forget_rate . If so we will not rein‐
734 stante the path till san_path_err_recovery_time. See
735 "Shaky paths detection" below.
736
737 The default is: no
738
739 san_path_err_recovery_time
740 If set to a value greater than 0, multipathd will make
741 sure that when path failures has exceeded the
742 san_path_err_threshold within san_path_err_forget_rate
743 then the path will be placed in failed state for
744 san_path_err_recovery_time duration.Once
745 san_path_err_recovery_time has timeout we will rein‐
746 stante the failed path . san_path_err_recovery_time
747 value should be in secs. See "Shaky paths detection"
748 below.
749
750 The default is: no
751
752 marginal_path_double_failed_time
753 One of the four parameters of supporting path check
754 based on accounting IO error such as intermittent
755 error. When a path failed event occurs twice in mar‐
756 ginal_path_double_failed_time seconds due to an IO
757 error and all the other three parameters are set, mul‐
758 tipathd will fail the path and enqueue this path into
759 a queue of which members are sent a couple of continu‐
760 ous direct reading asynchronous IOs at a fixed sample
761 rate of 10HZ to start IO error accounting process. See
762 "Shaky paths detection" below.
763
764 The default is: no
765
766 marginal_path_err_sample_time
767 One of the four parameters of supporting path check
768 based on accounting IO error such as intermittent
769 error. If it is set to a value no less than 120, when
770 a path fail event occurs twice in marginal_path_dou‐
771 ble_failed_time second due to an IO error, multipathd
772 will fail the path and enqueue this path into a queue
773 of which members are sent a couple of continuous
774 direct reading asynchronous IOs at a fixed sample rate
775 of 10HZ to start the IO accounting process for the
776 path will last for marginal_path_err_sample_time. If
777 the rate of IO error on a particular path is greater
778 than the marginal_path_err_rate_threshold, then the
779 path will not reinstate for margin‐
780 al_path_err_recheck_gap_time seconds unless there is
781 only one active path. After margin‐
782 al_path_err_recheck_gap_time expires, the path will be
783 requeueed for rechecking. If checking result is good
784 enough, the path will be reinstated. See "Shaky paths
785 detection" below.
786
787 The default is: no
788
789 marginal_path_err_rate_threshold
790 The error rate threshold as a permillage (1/1000). One
791 of the four parameters of supporting path check based
792 on accounting IO error such as intermittent error.
793 Refer to marginal_path_err_sample_time. If the rate of
794 IO errors on a particular path is greater than this
795 parameter, then the path will not reinstate for mar‐
796 ginal_path_err_recheck_gap_time seconds unless there
797 is only one active path. See "Shaky paths detection"
798 below.
799
800 The default is: no
801
802 marginal_path_err_recheck_gap_time
803 One of the four parameters of supporting path check
804 based on accounting IO error such as intermittent
805 error. Refer to marginal_path_err_sample_time. If this
806 parameter is set to a positive value, the failed path
807 of which the IO error rate is larger than margin‐
808 al_path_err_rate_threshold will be kept in failed
809 state for marginal_path_err_recheck_gap_time seconds.
810 When marginal_path_err_recheck_gap_time seconds
811 expires, the path will be requeueed for checking. If
812 checking result is good enough, the path will be rein‐
813 stated, or else it will keep failed. See "Shaky paths
814 detection" below.
815
816 The default is: no
817
818 delay_watch_checks
819 This option is deprecated, and mapped to
820 san_path_err_forget_rate. If this is set to a value
821 greater than 0 and no san_path_err options are set,
822 san_path_err_forget_rate will be set to the value of
823 delay_watch_checks and san_path_err_threshold will be
824 set to 1. See the san_path_err_forget_rate and
825 san_path_err_threshold options, and "Shaky paths
826 detection" below for more information.
827
828 The default is: no
829
830 delay_wait_checks
831 This option is deprecated, and mapped to
832 san_path_err_recovery_time. If this is set to a value
833 greater than 0 and no san_path_err options are set,
834 san_path_err_recovery_time will be set to the value of
835 delay_wait_checks times max_polling_interval. This
836 will give approximately the same wait time as
837 delay_wait_checks previously did. Also,
838 san_path_err_threshold will be set to 1. See the
839 san_path_err_recovery_time and san_path_err_threshold
840 options, and "Shaky paths detection" below for more
841 information.
842
843 The default is: no
844
845 marginal_pathgroups
846 If set to no, the delay_*_checks, marginal_path_*, and
847 san_path_err_* options will keep marginal, or "shaky",
848 paths from being reinstated until they have been moni‐
849 tored for some time. This can cause situations where
850 all non-marginal paths are down, and no paths are
851 usable until multipathd detects this and reinstates a
852 marginal path. If the multipath device is not config‐
853 ured to queue IO in this case, it can cause IO errors
854 to occur, even though there are marginal paths avail‐
855 able. However, if this option is set to yes, when one
856 of the marginal path detecting methods determines that
857 a path is marginal, it will be reinstated and placed
858 in a seperate pathgroup that will only be used after
859 all the non-marginal pathgroups have been tried first.
860 This prevents the possibility of IO errors occuring
861 while marginal paths are still usable. After the path
862 has been monitored for the configured time, and is
863 declared healthy, it will be returned to its normal
864 pathgroup. See "Shaky paths detection" below for more
865 information.
866
867 The default is: no
868
869 find_multipaths This option controls whether multipath and multipathd
870 try to create multipath maps over non-blacklisted
871 devices they encounter. This matters a) when a device
872 is encountered by multipath -u during udev rule pro‐
873 cessing (a device is blocked from further processing
874 by higher layers - such as LVM - if and only if it´s
875 considered a valid multipath device path), and b) when
876 multipathd detects a new device. The following values
877 are possible:
878
879 strict Both multipath and multipathd treat only
880 such devices as multipath devices which have
881 been part of a multipath map previously, and
882 which are therefore listed in the
883 wwids_file. Users can manually set up multi‐
884 path maps using the multipathd add map com‐
885 mand. Once set up manually, the map is
886 remembered in the wwids file and will be set
887 up automatically in the future.
888
889 no Multipath behaves like strict. Multipathd
890 behaves like greedy.
891
892 yes Both multipathd and multipath treat a device
893 as multipath device if the conditions for
894 strict are met, or if at least two non-
895 blacklisted paths with the same WWID have
896 been detected.
897
898 greedy Both multipathd and multipath treat every
899 non-blacklisted device as multipath device
900 path.
901
902 smart This differs from find_multipaths yes only
903 in the way it treats new devices for which
904 only one path has been detected yet. When
905 such a device is first encounted in udev
906 rules, it is treated as a multipath device.
907 multipathd waits whether additional paths
908 with the same WWID appears. If that happens,
909 it sets up a multipath map. If it doesn´t
910 happen until a timeout expires, or if set‐
911 ting up the map fails, a new uevent is trig‐
912 gered for the device; at second encounter in
913 the udev rules, the device will be treated
914 as non-multipath and passed on to upper lay‐
915 ers. Note: this may cause delays during
916 device detection if there are single-path
917 devices which aren´t blacklisted.
918
919 The default is: strict
920
921 find_multipaths_timeout
922 Timeout, in seconds, to wait for additional paths
923 after detecting the first one, if find_multipaths
924 "smart" (see above) is set. If the value is positive,
925 this timeout is used for all unknown, non-blacklisted
926 devices encountered. If the value is negative (recom‐
927 mended), it's only applied to "known" devices that
928 have an entry in multipath's hardware table, either in
929 the built-in table or in a device section; other
930 ("unknown") devices will use a timeout of only 1 sec‐
931 ond to avoid booting delays. The value 0 means "use
932 the built-in default". If find_multipath has a value
933 other than smart, this option has no effect.
934
935 The default is: -10 (10s for known and 1s for unknown
936 hardware)
937
938 uxsock_timeout CLI receive timeout in milliseconds. For larger sys‐
939 tems CLI commands might timeout before the multipathd
940 lock is released and the CLI command can be processed.
941 This will result in errors like "timeout receiving
942 packet" to be returned from CLI commands. In these
943 cases it is recommended to increase the CLI timeout to
944 avoid those issues.
945
946 The default is: 1000
947
948 retrigger_tries Sets the number of times multipathd will try to
949 retrigger a uevent to get the WWID.
950
951 The default is: 3
952
953 retrigger_delay Sets the amount of time, in seconds, to wait between
954 retriggers.
955
956 The default is: 10
957
958 missing_uev_wait_timeout
959 Controls how many seconds multipathd will wait, after
960 a new multipath device is created, to receive a change
961 event from udev for the device, before automatically
962 enabling device reloads. Usually multipathd will delay
963 reloads on a device until it receives a change uevent
964 from the initial table load.
965
966 The default is: 30
967
968 skip_kpartx If set to yes , kpartx will not automatically create
969 partitions on the device.
970
971 The default is: no
972
973 disable_changed_wwids
974 This option is deprecated and ignored. If the WWID of
975 a path suddenly changes, multipathd handles it as if
976 it was removed and then added again.
977
978 remove_retries This sets how may times multipath will retry removing
979 a device that is in-use. Between each attempt, multi‐
980 path will sleep 1 second.
981
982 The default is: 0
983
984 max_sectors_kb Sets the max_sectors_kb device parameter on all path
985 devices and the multipath device to the specified
986 value.
987
988 The default is: <device dependent>
989
990 ghost_delay Sets the number of seconds that multipath will wait
991 after creating a device with only ghost paths before
992 marking it ready for use in systemd. This gives the
993 active paths time to appear before the multipath runs
994 the hardware handler to switch the ghost paths to
995 active ones. Setting this to 0 or on makes multipath
996 immediately mark a device with only ghost paths as
997 ready.
998
999 The default is: no
1000
1001 enable_foreign Enables or disables foreign libraries (see section
1002 FOREIGN MULTIPATH SUPPORT below). The value is a regu‐
1003 lar expression; foreign libraries are loaded if their
1004 name (e.g. "nvme") matches the expression. By default,
1005 no foreign libraries are enabled. Set this to "nvme"
1006 to enable NVMe native multipath support, or ".*" to
1007 enable all foreign libraries.
1008
1009 The default is: "NONE"
1010
1011
1013 The blacklist section is used to exclude specific devices from the mul‐
1014 tipath topology. It is most commonly used to exclude local disks or
1015 non-disk devices (such as LUNs for the storage array controller) from
1016 being handled by multipath-tools.
1017
1018 In the blacklist and blacklist_exceptions sections, starting a quoted
1019 value with an exclamation mark "!" will invert the matching of the rest
1020 of the regular expression. For instance, "!^sd[a-z]" will match all
1021 values that do not start with "sd[a-z]". The exclamation mark can be
1022 escaped "\!" to match a literal ! at the start of a regular expression.
1023 Note: The exclamation mark must be inside quotes, otherwise it will be
1024 treated as starting a comment.
1025
1026 The blacklist_exceptions section is used to revert the actions of the
1027 blacklist section. This allows one to selectively include ("whitelist")
1028 devices which would normally be excluded via the blacklist section. A
1029 common usage is to blacklist "everything" using a catch-all regular
1030 expression, and create specific blacklist_exceptions entries for those
1031 devices that should be handled by multipath-tools.
1032
1033 The following keywords are recognized in both sections. The defaults
1034 are empty unless explicitly stated.
1035
1036 devnode Regular expression matching the device nodes to be
1037 excluded/included.
1038
1039 The default blacklist consists of the regular expres‐
1040 sion "!^(sd[a-z]|dasd[a-z]|nvme[0-9])". This causes
1041 all device types other than scsi, dasd, and nvme to be
1042 excluded from multipath handling by default.
1043
1044 wwid Regular expression for the World Wide Identifier of a
1045 device to be excluded/included.
1046
1047 device Subsection for the device description. This subsection
1048 recognizes the vendor and product keywords. Both are
1049 regular expressions. For a full description of these
1050 keywords please see the devices section description.
1051
1052 property Regular expression for an udev property. All devices
1053 that have matching udev properties will be
1054 excluded/included. The handling of the property key‐
1055 word is special, because if a property black‐
1056 list_exception is set, devices must have at least one
1057 whitelisted udev property; otherwise they're treated
1058 as blacklisted, and the message "blacklisted, udev
1059 property missing" is displayed in the logs. For exam‐
1060 ple, setting the property blacklist_exception to
1061 (SCSI_IDENT_|ID_WWN), will cause well-behaved SCSI
1062 devices and devices that provide a WWN (World Wide
1063 Number) to be included, and all others to be excluded.
1064 This works to exclude most non-multipathable devices.
1065
1066 Note: The behavior of this option has changed in mul‐
1067 tipath-tools 0.8.2 compared to previous versions.
1068 Blacklisting by missing properties is only applied to
1069 devices which do have the property specified by
1070 uid_attribute (e.g. ID_SERIAL) set. Previously, it was
1071 applied to every device, possibly causing devices to
1072 be blacklisted because of temporary I/O error condi‐
1073 tions.
1074
1075 protocol Regular expression for the protocol of a device to be
1076 excluded/included.
1077
1078 The protocol strings that multipath recognizes are
1079 scsi:fcp, scsi:spi, scsi:ssa, scsi:sbp, scsi:srp,
1080 scsi:iscsi, scsi:sas, scsi:adt, scsi:ata, scsi:unspec,
1081 ccw, cciss, nvme, and undef. The protocol that a path
1082 is using can be viewed by running multipathd show
1083 paths format "%d %P"
1084
1085 For every device, these 5 blacklist criteria are evaluated in the the
1086 order "property, devnode, device, protocol, wwid". If a device turns
1087 out to be blacklisted by any criterion, it's excluded from handling by
1088 multipathd, and the later criteria aren't evaluated any more. For each
1089 criterion, the whitelist takes precedence over the blacklist if a
1090 device matches both.
1091
1092 Note: Besides the blacklist and whitelist, other configuration options
1093 such as find_multipaths have an impact on whether or not a given device
1094 is handled by multipath-tools.
1095
1097 The multipaths section allows setting attributes of multipath maps. The
1098 attributes that are set via the multipaths section (see list below)
1099 take precedence over all other configuration settings, including those
1100 from the overrides section.
1101
1102 The only recognized attribute for the multipaths section is the multi‐
1103 path subsection. If there are multiple multipath subsections matching a
1104 given WWID, the contents of these sections are merged, and settings
1105 from later entries take precedence.
1106
1107 The multipath subsection recognizes the following attributes:
1108
1109 wwid (Mandatory) World Wide Identifier. Detected multipath
1110 maps are matched agains this attribute. Note that,
1111 unlike the wwid attribute in the blacklist section,
1112 this is not a regular expression or a substring; WWIDs
1113 must match exactly inside the multipaths section.
1114
1115 alias Symbolic name for the multipath map. This takes prece‐
1116 dence over a an entry for the same WWID in the bind‐
1117 ings_file.
1118
1119 The following attributes are optional; if not set the default values
1120 are taken from the overrides, devices, or defaults section:
1121
1122 path_grouping_policy
1123 path_selector
1124 prio
1125 prio_args
1126 failback
1127 rr_weight
1128 no_path_retry
1129 rr_min_io
1130 rr_min_io_rq
1131 flush_on_last_del
1132 features
1133 reservation_key
1134 user_friendly_names
1135 deferred_remove
1136 san_path_err_threshold
1137 san_path_err_forget_rate
1138 san_path_err_recovery_time
1139 marginal_path_err_sample_time
1140 marginal_path_err_rate_threshold
1141 marginal_path_err_recheck_gap_time
1142 marginal_path_double_failed_time
1143 delay_watch_checks
1144 delay_wait_checks
1145 skip_kpartx
1146 max_sectors_kb
1147 ghost_delay
1148
1150 multipath-tools have a built-in device table with reasonable defaults
1151 for more than 100 known multipath-capable storage devices. The devices
1152 section can be used to override these settings. If there are multiple
1153 matches for a given device, the attributes of all matching entries are
1154 applied to it. If an attribute is specified in several matching device
1155 subsections, later entries take precedence. Thus, entries in files
1156 under config_dir (in reverse alphabetical order) have the highest
1157 precedence, followed by entries in multipath.conf; the built-in hard‐
1158 ware table has the lowest precedence. Inside a configuration file,
1159 later entries have higher precedence than earlier ones.
1160
1161 The only recognized attribute for the devices section is the device
1162 subsection. Devices detected in the system are matched against the
1163 device entries using the vendor, product, and revision fields, which
1164 are all POSIX Extended regular expressions (see regex(7)).
1165
1166 The vendor, product, and revision fields that multipath or multipathd
1167 detect for devices in a system depend on the device type. For SCSI
1168 devices, they correspond to the respective fields of the SCSI INQUIRY
1169 page. In general, the command 'multipathd show paths format "%d %s"'
1170 command can be used to see the detected properties for all devices in
1171 the system.
1172
1173 The device subsection recognizes the following attributes:
1174
1175 vendor (Mandatory) Regular expression to match the vendor
1176 name.
1177
1178 product (Mandatory) Regular expression to match the product
1179 name.
1180
1181 revision Regular expression to match the product revision. If
1182 not specified, any revision matches.
1183
1184 product_blacklist
1185 Products with the given vendor matching this string
1186 are blacklisted. This is equivalent to a device entry
1187 in the blacklist section with the vendor attribute set
1188 to this entry's vendor, and the product attribute set
1189 to the value of product_blacklist.
1190
1191 alias_prefix The user_friendly_names prefix to use for this device
1192 type, instead of the default "mpath".
1193
1194 vpd_vendor The vendor specific vpd page information, using the
1195 vpd page abbreviation. The vpd page abbreviation can
1196 be found by running sg_vpd -e. multipathd will use
1197 this information to gather device specific information
1198 that can be displayed with the %g wilcard for the mul‐
1199 tipathd show maps format and multipathd show paths
1200 format commands. Currently only the hp3par vpd page is
1201 supported.
1202
1203 hardware_handler The hardware handler to use for this device type. The
1204 following hardware handler are implemented:
1205
1206 1 emc (Hardware-dependent) Hardware handler for
1207 DGC class arrays as CLARiiON CX/AX and EMC
1208 VNX and Unity families.
1209
1210 1 rdac (Hardware-dependent) Hardware handler for
1211 LSI/Engenio/NetApp RDAC class as NetApp
1212 SANtricity E/EF Series, and OEM arrays
1213 from IBM DELL SGI STK and SUN.
1214
1215 1 hp_sw (Hardware-dependent) Hardware handler for
1216 HP/COMPAQ/DEC HSG80 and MSA/HSV arrays
1217 with Active/Standby mode exclusively.
1218
1219 1 alua (Hardware-dependent) Hardware handler for
1220 SCSI-3 ALUA compatible arrays.
1221
1222 1 ana (Hardware-dependent) Hardware handler for
1223 NVMe ANA compatible arrays.
1224
1225 The default is: <unset>
1226
1227 Important Note: Linux kernels 4.3 and newer automati‐
1228 cally attach a device handler to known devices (which
1229 includes all devices supporting SCSI-3 ALUA) and dis‐
1230 allow changing the handler afterwards. Setting hard‐
1231 ware_handler for such devices on these kernels has no
1232 effect.
1233
1234 The following attributes are optional; if not set the default values
1235 are taken from the defaults section:
1236
1237 path_grouping_policy
1238 uid_attribute
1239 getuid_callout
1240 path_selector
1241 path_checker
1242 prio
1243 prio_args
1244 features
1245 failback
1246 rr_weight
1247 no_path_retry
1248 rr_min_io
1249 rr_min_io_rq
1250 fast_io_fail_tmo
1251 dev_loss_tmo
1252 flush_on_last_del
1253 user_friendly_names
1254 retain_attached_hw_handler
1255 detect_prio
1256 detect_checker
1257 deferred_remove
1258 san_path_err_threshold
1259 san_path_err_forget_rate
1260 san_path_err_recovery_time
1261 marginal_path_err_sample_time
1262 marginal_path_err_rate_threshold
1263 marginal_path_err_recheck_gap_time
1264 marginal_path_double_failed_time
1265 delay_watch_checks
1266 delay_wait_checks
1267 skip_kpartx
1268 max_sectors_kb
1269 ghost_delay
1270 all_tg_pt
1271
1273 The overrides section recognizes the following optional attributes; if
1274 not set the values are taken from the devices or defaults sections:
1275
1276 path_grouping_policy
1277 uid_attribute
1278 getuid_callout
1279 path_selector
1280 path_checker
1281 alias_prefix
1282 features
1283 prio
1284 prio_args
1285 failback
1286 rr_weight
1287 no_path_retry
1288 rr_min_io
1289 rr_min_io_rq
1290 flush_on_last_del
1291 fast_io_fail_tmo
1292 dev_loss_tmo
1293 user_friendly_names
1294 retain_attached_hw_handler
1295 detect_prio
1296 detect_checker
1297 deferred_remove
1298 san_path_err_threshold
1299 san_path_err_forget_rate
1300 san_path_err_recovery_time
1301 marginal_path_err_sample_time
1302 marginal_path_err_rate_threshold
1303 marginal_path_err_recheck_gap_time
1304 marginal_path_double_failed_time
1305 delay_watch_checks
1306 delay_wait_checks
1307 skip_kpartx
1308 max_sectors_kb
1309 ghost_delay
1310 all_tg_pt
1311
1313 Multipath uses a World Wide Identification (WWID) to determine which
1314 paths belong to the same device. Each path presenting the same WWID is
1315 assumed to point to the same device.
1316
1317 The WWID is generated by four methods (in the order of preference):
1318
1319 uid_attrs The WWID is derived from udev attributes by matching
1320 the device node name; cf uid_attrs above.
1321
1322 getuid_callout Use the specified external program; cf getuid_callout
1323 above. Care should be taken when using this method;
1324 the external program needs to be loaded from disk for
1325 execution, which might lead to deadlock situations in
1326 an all-paths-down scenario.
1327
1328 uid_attribute Use the value of the specified udev attribute; cf
1329 uid_attribute above. This method is preferred to
1330 getuid_callout as multipath does not need to call any
1331 external programs here. However, under certain circum‐
1332 stances udev might not be able to generate the
1333 requested variable.
1334
1335 sysfs Try to determine the WWID from sysfs attributes. For
1336 SCSI devices, this means reading the Vital Product
1337 Data (VPD) page "Device Identification" (0x83).
1338
1339 The default settings (using udev and uid_attribute configured from the
1340 built-in hardware table) should work fine in most scenarios. Users who
1341 want to enable uevent merging must set uid_attrs.
1342
1344 A common problem in SAN setups is the occurence of intermittent errors:
1345 a path is unreachable, then reachable again for a short time, disap‐
1346 pears again, and so forth. This happens typically on unstable intercon‐
1347 nects. It is undesirable to switch pathgroups unnecessarily on such
1348 frequent, unreliable events. multipathd supports three different meth‐
1349 ods for detecting this situation and dealing with it. All methods share
1350 the same basic mode of operation: If a path is found to be "shaky" or
1351 "flipping", and appears to be in healthy status, it is not reinstated
1352 (put back to use) immediately. Instead, it is placed in the "delayed"
1353 state and watched for some time, and only reinstated if the healthy
1354 state appears to be stable. If the marginal_pathgroups option is set,
1355 the path will reinstated immediately, but placed in a special pathgroup
1356 for marginal paths. Marginal pathgroups will not be used until all
1357 other pathgroups have been tried. At the time when the path would nor‐
1358 mally be reinstated, it will be returned to its normal pathgroup. The
1359 logic of determining "shaky" condition, as well as the logic when to
1360 reinstate, differs between the three methods.
1361
1362 "delay_checks" failure tracking
1363 This method is deprecated and mapped to the "san_path_err"
1364 method. See the delay_watch_checks and delay_wait_checks
1365 options above for more information.
1366
1367
1368 "marginal_path" failure tracking
1369 If a second failure event (good->bad transition) occurs within
1370 marginal_path_double_failed_time seconds after a failure, high-
1371 frequency monitoring is started for the affected path: I/O is
1372 sent at a rate of 10 per second. This is done for margin‐
1373 al_path_err_sample_time seconds. During this period, the path
1374 is not reinstated. If the rate of errors remains below margin‐
1375 al_path_err_rate_threshold during the monitoring period, the
1376 path is reinstated. Otherwise, it is kept in failed state for
1377 marginal_path_err_recheck_gap_time, and after that, it is moni‐
1378 tored again. For this method, time intervals are measured in
1379 seconds.
1380
1381 "san_path_err" failure tracking
1382 multipathd counts path failures for each path. Once the number
1383 of failures exceeds the value given by san_path_err_threshold,
1384 the path is not reinstated for san_path_err_recovery_time sec‐
1385 onds. While counting failures, multipathd "forgets" one past
1386 failure every "san_path_err_forget_rate" ticks; thus if errors
1387 don't occur more often then once in the forget rate interval,
1388 the failure count doesn't increase and the threshold is never
1389 reached. Ticks are the time between path checks by multipathd,
1390 which is variable and controlled by the polling_interval and
1391 max_polling_interval parameters.
1392
1393 This method is deprecated in favor of the "marginal_path" fail‐
1394 ure tracking method, and only offered for backward compatibil‐
1395 ity.
1396
1397 See the documentation of the individual options above for details. It
1398 is strongly discouraged to use more than one of these methods for any
1399 given multipath map, because the two concurrent methods may interact in
1400 unpredictable ways. If the "marginal_path" method is active, the
1401 "san_path_err" parameters are implicitly set to 0.
1402
1404 multipath and multipathd can load "foreign" libraries to add support
1405 for other multipathing technologies besides the Linux device mapper.
1406 Currently this support is limited to printing detected information
1407 about multipath setup. In topology output, the names of foreign maps
1408 are prefixed by the foreign library name in square brackets, as in this
1409 example:
1410
1411 # multipath -ll
1412 uuid.fedcba98-3579-4567-8765-123456789abc [nvme]:nvme4n9 NVMe,Some NVMe controller,FFFFFFFF
1413 size=167772160 features='n/a' hwhandler='ANA' wp=rw
1414 |-+- policy='n/a' prio=50 status=optimized
1415 | `- 4:38:1 nvme4c38n1 0:0 n/a optimized live
1416 `-+- policy='n/a' prio=50 status=optimized
1417 `- 4:39:1 nvme4c39n1 0:0 n/a optimized live
1418
1419 The "nvme" foreign library provides support for NVMe native multi‐
1420 pathing in the kernel. It is part of the standard multipath package.
1421
1423 The usage of queue_if_no_path option can lead to D state processes
1424 being hung and not killable in situations where all the paths to the
1425 LUN go offline. It is advisable to use the no_path_retry option
1426 instead.
1427
1428 The use of queue_if_no_path or no_path_retry might lead to a deadlock
1429 if the dev_loss_tmo setting results in a device being removed while I/O
1430 is still queued. The multipath daemon will update the dev_loss_tmo set‐
1431 ting accordingly to avoid this deadlock. Hence if both values are spec‐
1432 ified the order of precedence is no_path_retry, queue_if_no_path,
1433 dev_loss_tmo.
1434
1436 udev(8), dmsetup(8), multipath(8), multipathd(8).
1437
1439 multipath-tools was developed by Christophe Varoqui, <christophe.varo‐
1440 qui@opensvc.com> and others.
1441
1442
1443
1444Linux 2018-05-21 MULTIPATH.CONF(5)