Provided by: multipath-tools_0.7.4-2ubuntu3.2_amd64 bug

NAME

       multipath.conf - multipath daemon configuration file.

DESCRIPTION

       /etc/multipath.conf  is  the  configuration  file  for the multipath daemon. It is used to
       overwrite the built-in configuration table of multipathd.  Any line whose first non-white-
       space character is a '#' is considered a comment line. Empty lines are ignored.

       Currently  used  multipathd  configuration  can  be  displayed  with  the  multipath -t or
       multipathd show config command.

SYNTAX

       The configuration file contains entries of the form:

              <section> {
                     <attribute> <value>
                     ...
                     <subsection> {
                            <attribute> <value>
                            ...
                     }
              }

       Each section contains one or more attributes or subsections. The recognized  keywords  for
       attributes or subsections depend on the section in which they occur.

       The following section keywords are recognized:

       defaults         This  section  defines  default  values  for  attributes  which  are used
                        whenever no values are given  in  the  appropriate  device  or  multipath
                        sections.

       blacklist        This  section defines which devices should be excluded from the multipath
                        topology discovery.

       blacklist_exceptions
                        This section defines which devices should be included  in  the  multipath
                        topology discovery, despite being listed in the blacklist section.

       multipaths       This  section  defines  the  multipath  topologies. They are indexed by a
                        World Wide Identifier(WWID). For  details  on  the  WWID  generation  see
                        section WWID generation below.

       devices          This section defines the device-specific settings.

       overrides        This  section  defines  values  for  attributes  that should override the
                        device-specific settings for all devices.

defaults section

       The defaults section recognizes the following keywords:

       verbosity        Default verbosity. Higher values  increase  the  verbosity  level.  Valid
                        levels are between 0 and 6.

                        The default is: 2

       polling_interval Interval  between  two  path  checks in seconds. For properly functioning
                        paths,  the  interval  between  checks   will   gradually   increase   to
                        max_polling_interval.   This  value will be overridden by the WatchdogSec
                        setting in the multipathd.service definition if systemd is used.

                        The default is: 5

       max_polling_interval
                        Maximal interval between two path checks in seconds.

                        The default is: 4 * polling_interval

       reassign_maps    Enable reassigning of device-mapper maps.  With  this  option  multipathd
                        will  remap  existing  device-mapper  maps  to  always point to multipath
                        device, not the underlying block devices. Possible values are yes and no.

                        The default is: no

       multipath_dir    Directory where the dynamic shared objects are stored. Defined at compile
                        time, commonly /lib64/multipath/ or /lib/multipath/.

                        The default is: <system dependent>

       path_selector    The  default  path  selector  algorithm  to  use; they are offered by the
                        kernel multipath target. There are three selector algorithms:

                        round-robin 0
                                    Loop through every path in the path group, sending  the  same
                                    amount  of  I/O  to  each.  Some  aspects  of behavior can be
                                    controlled with the attributes: rr_min_io,  rr_min_io_rq  and
                                    rr_weight.

                        queue-length 0
                                    (Since  2.6.31  kernel) Choose the path for the next bunch of
                                    I/O based on the amount of outstanding I/O to the path.

                        service-time 0
                                    (Since 2.6.31 kernel) Choose the path for the next  bunch  of
                                    I/O  based  on  the amount of outstanding I/O to the path and
                                    its relative throughput.

                        The default is: service-time 0

       path_grouping_policy
                        The default path grouping policy  to  apply  to  unspecified  multipaths.
                        Possible values are:

                        failover    One path per priority group.

                        multibus    All paths in one priority group.

                        group_by_serial
                                    One priority group per serial number.

                        group_by_prio
                                    One   priority  group  per  priority  value.  Priorities  are
                                    determined by callout programs specified as  a  global,  per-
                                    controller or per-multipath option in the configuration file.

                        group_by_node_name
                                    One  priority  group  per target node name. Target node names
                                    are fetched in /sys/class/fc_transport/target*/node_name.

                        The default is: failover

       uid_attrs        The udev attribute providing a unique path identifier  for  corresponding
                        type  of  path devices. If this field is configured and matched with type
                        of device, it would override  any  other  methods  providing  for  device
                        unique  identifier  in config file, and it would activate merging uevents
                        according to the identifier to promote effiecncy in  processing  uevents.
                        It  has  no default value, if you want to identify path by udev attribute
                        and to activate merging uevents for SCSI and DASD devices,  you  can  set
                        its value as: uid_attrs "sd:ID_SERIAL dasd:ID_UID".

                        The default is: <unset>

       uid_attribute    The udev attribute providing a unique path identifier.

                        The default is: for SCSI devices ID_SERIAL

                        The default is: for DASD devices ID_UID

                        The default is: for NVME devices ID_WWN

       getuid_callout   (Superseded  by uid_attribute) The default program and args to callout to
                        obtain a unique path identifier. Should be  specified  with  an  absolute
                        path.

                        The default is: <unset>

       prio             The  name  of  the  path  priority  routine. The specified routine should
                        return a numeric value specifying the relative  priority  of  this  path.
                        Higher number have a higher priority.  "none" is a valid value. Currently
                        the following path priority routines are implemented:

                        const       Return a constant priority of 1.

                        sysfs       Use the sysfs attributes access_state and  preferred_path  to
                                    generate  the  path  priority.  This  prioritizer accepts the
                                    optional prio_arg exclusive_pref_bit.

                        emc         (Hardware-dependent) Generate the path priority for DGC class
                                    arrays as CLARiiON CX/AX and EMC VNX and Unity families.

                        alua        (Hardware-dependent)  Generate the path priority based on the
                                    SCSI-3 ALUA settings. This prioritizer accepts  the  optional
                                    prio_arg exclusive_pref_bit.

                        ontap       (Hardware-dependent)  Generate  the  path priority for NetApp
                                    ONTAP class and OEM arrays as IBM NSeries.

                        rdac        (Hardware-dependent)   Generate   the   path   priority   for
                                    LSI/Engenio/NetApp  RDAC  class  as  NetApp  SANtricity  E/EF
                                    Series, and OEM arrays from IBM DELL SGI STK and SUN.

                        hp_sw       (Hardware-dependent)   Generate   the   path   priority   for
                                    HP/COMPAQ/DEC  HSG80  and  MSA/HSV arrays with Active/Standby
                                    mode exclusively.

                        hds         (Hardware-dependent) Generate the path priority  for  Hitachi
                                    AMS 2000 and HUS 100 families of arrays.

                        random      Generate a random priority between 1 and 10.

                        weightedpath
                                    Generate  the  path  priority based on the regular expression
                                    and the priority provided  as  argument.  Requires  prio_args
                                    keyword.

                        path_latency
                                    Generate  the  path  priority  based  on a latency algorithm.
                                    Requires prio_args keyword.

                        datacore    (Hardware-dependent) Generate  the  path  priority  for  some
                                    DataCore storage arrays. Requires prio_args keyword.

                        iet         (iSCSI  only)  Generate path priority for iSCSI targets based
                                    on IP address. Requires prio_args keyword.

                        The default depends on the detect_prio setting:  If  detect_prio  is  yes
                        (default),  the default priority algorithm is sysfs (except for NetAPP E-
                        Series, where it is alua). If detect_prio is  no,  the  default  priority
                        algorithm is const.

       prio_args        Arguments  to  pass to to the prio function. This only applies to certain
                        prioritizers:

                        weighted    Needs a value of the form "<hbtl|devname|serial|wwn> <regex1>
                                    <prio1> <regex2> <prio2> ..."

                                    hbtl    Regex  can  be  of  SCSI H:B:T:L format. For example:
                                            1:0:.:. , *:0:0:.

                                    devname Regex can be of device name format. For example:  sda
                                            , sd.e

                                    serial  Regex  can  be  of serial number format. For example:
                                            .*J1FR.*324 . The serial can  be  looked  up  through
                                            sysfs  or  by  running  multipathd  show paths format
                                            "%z". For example: 0395J1FR904324

                                    wwn     Regex      can       be       of       the       form
                                            "host_wwnn:host_wwpn:target_wwnn:target_wwpn"   these
                                            values can be looked up through sysfs or  by  running
                                            multipathd   show  paths  format  "%N:%R:%n:%r".  For
                                            example:  0x200100e08ba0aea0:0x210100e08ba0aea0:.*:.*
                                            , .*:.*:iqn.2009-10.com.redhat.msp.lab.ask-06:.*

                        path_latency
                                    Needs a value of the form "io_num=<20> base_num=<10>"

                                    io_num  The  number  of  read  IOs  sent  to the current path
                                            continuously, used  to  calculate  the  average  path
                                            latency.  Valid Values: Integer, [2, 200].

                                    base_num
                                            The  base  number value of logarithmic scale, used to
                                            partition different  priority  ranks.  Valid  Values:
                                            Integer,  [2,  10].  And Max average latency value is
                                            100s, min average latency value is 1us.  For example:
                                            If base_num=10, the paths will be grouped in priority
                                            groups with path latency <=1us, (1us,  10us],  (10us,
                                            100us],  (100us,  1ms],  (1ms,  10ms], (10ms, 100ms],
                                            (100ms, 1s], (1s, 10s], (10s, 100s], >100s.

                        alua        If exclusive_pref_bit is set, paths with the  preferred  path
                                    bit set will always be in their own path group.

                        sysfs       If  exclusive_pref_bit  is set, paths with the preferred path
                                    bit set will always be in their own path group.

                        datacore

                                    preferredsds
                                            (Mandatory) The preferred "SDS name".

                                    timeout (Optional) The timeout for the INQUIRY, in ms.

                        iet

                                    preferredip=...
                                            (Mandatory)  Th  preferred  IP  address,  in   dotted
                                            decimal notation, for iSCSI targets.

                        The default is: <unset>

       features         Specify  any  device-mapper features to be used. Syntax is num list where
                        num is the number, between 0 and 8, of features in list.  Possible values
                        for the feature list are:

                        queue_if_no_path
                                    (Deprecated,  superseded  by  no_path_retry)  Queue I/O if no
                                    path is active.  Identical to the  no_path_retry  with  queue
                                    value.  If  both  this feature and no_path_retry are set, the
                                    latter value takes precedence. See KNOWN ISSUES.

                        pg_init_retries <times>
                                    (Since kernel 2.6.24) Number of times to  retry  pg_init,  it
                                    must be between 1 and 50.

                        pg_init_delay_msecs <msecs>
                                    (Since  kernel  2.6.38) Number of msecs before pg_init retry,
                                    it must be between 0 and 60000.

                        queue_mode <mode>
                                    (Since kernel 4.8) Select the the queueing mode per multipath
                                    device.   <mode>  can  be bio, rq or mq, which corresponds to
                                    bio-based,  request-based,  and   block-multiqueue   (blk-mq)
                                    request-based,  respectively.   The  default  depends  on the
                                    kernel parameter dm_mod.use_blk_mq. It is mq if the latter is
                                    set, and rq otherwise.

                        The default is: <unset>

       path_checker     The  default  method  used  to determine the paths state. Possible values
                        are:

                        readsector0 (Deprecated) Read  the  first  sector  of  the  device.  This
                                    checker is being deprecated, please use tur instead.

                        tur         Issue a TEST UNIT READY command to the device.

                        emc_clariion
                                    (Hardware-dependent)  Query  the  DGC/EMC  specific EVPD page
                                    0xC0 to determine the path state for CLARiiON CX/AX  and  EMC
                                    VNX and Unity arrays families.

                        hp_sw       (Hardware-dependent)  Check  the path state for HP/COMPAQ/DEC
                                    HSG80   and   MSA/HSV   arrays   with   Active/Standby   mode
                                    exclusively.

                        rdac        (Hardware-dependent)     Check    the    path    state    for
                                    LSI/Engenio/NetApp  RDAC  class  as  NetApp  SANtricity  E/EF
                                    Series, and OEM arrays from IBM DELL SGI STK and SUN.

                        directio    (Deprecated)  Read  the  first  sector  with direct I/O. This
                                    checker is being deprecated, it  could  cause  spurious  path
                                    failures under high load.  Please use tur instead.

                        cciss_tur   (Hardware-dependent) Check the path state for HP/COMPAQ Smart
                                    Array(CCISS) controllers.

                        none        Do not check the device, fallback to use the values retrieved
                                    from sysfs

                        rbd         Check if the path is in the Ceph blacklist and remap the path
                                    if it is.

                        The default is: tur

       alias_prefix     The user_friendly_names prefix.

                        The default is: mpath

       failback         Tell multipathd how to manage path group failback.  To  select  immediate
                        or  a  value,  it's  mandatory  that the device has support for a working
                        prioritizer.

                        immediate   Immediately failback to the highest priority  pathgroup  that
                                    contains active paths.

                        manual      Do not perform automatic failback.

                        followover  Used  to  deal  with  multiple  computers  accessing the same
                                    Active/Passive  storage  devices.  Only   perform   automatic
                                    failback  when  the first path of a pathgroup becomes active.
                                    This keeps a cluster node  from  automatically  failing  back
                                    when another node requested the failover.

                        values > 0  Deferred failback (time to defer in seconds).

                        The default is: manual

       rr_min_io        Number of I/O requests to route to a path before switching to the next in
                        the same path group. This is only for Block I/O(BIO) based multipath  and
                        only apply to round-robin path_selector.

                        The default is: 1000

       rr_min_io_rq     Number of I/O requests to route to a path before switching to the next in
                        the same path group. This is only for Request based  multipath  and  only
                        apply to round-robin path_selector.

                        The default is: 1

       max_fds          Specify  the  maximum  number  of  file descriptors that can be opened by
                        multipath and multipathd. This is equivalent to ulimit -n. A value of max
                        will  set  this to the system limit from /proc/sys/fs/nr_open. If this is
                        not set, the maximum number  of  open  fds  is  taken  from  the  calling
                        process.  It  is  usually  1024.  To  be  safe, this should be set to the
                        maximum number of paths plus 32, if that number is greated than 1024.

                        The default is: max

       rr_weight        If set to priorities the multipath configurator will assign path  weights
                        as  "path  prio * rr_min_io". Possible values are priorities or uniform .
                        Only apply to round-robin path_selector.

                        The default is: uniform

       no_path_retry    Specify what to do when all paths are down. Possible values are:

                        value > 0   Number of retries until disable I/O queueing.

                        fail        For immediate failure (no I/O queueing).

                        queue       For never stop I/O queueing, similar to queue_if_no_path. See
                                    KNOWN ISSUES.

                        The default is: fail

       queue_without_daemon
                        If set to no , when multipathd stops, queueing will be turned off for all
                        devices.  This is useful for devices that set no_path_retry. If a machine
                        is shut down while all paths to a device are down, it is possible to hang
                        waiting for I/O to return from  the  device  after  multipathd  has  been
                        stopped.  Without  multipathd  running,  access  to  the  paths cannot be
                        restored, and the kernel cannot be told to  stop  queueing  I/O.  Setting
                        queue_without_daemon to no , avoids this problem.

                        The default is: no

       checker_timeout  Specify  the timeout to use for path checkers and prioritizers that issue
                        SCSI commands with an explicit timeout, in seconds.

                        The default is: in /sys/block/sd<x>/device/timeout

       flush_on_last_del
                        If set to yes , multipathd will disable queueing when the last path to  a
                        device has been deleted.

                        The default is: no

       user_friendly_names
                        If set to yes , using the bindings file /etc/multipath/bindings to assign
                        a persistent and unique alias to the multipath, in the form of  mpath<n>.
                        If  set  to  no use the WWID as the alias. In either case this be will be
                        overridden by any specific aliases in the multipaths section.

                        The default is: no

       fast_io_fail_tmo Specify the number of seconds the SCSI layer will wait  after  a  problem
                        has  been  detected  on a FC remote port before failing I/O to devices on
                        that remote port.  This should be smaller than dev_loss_tmo. Setting this
                        to off will disable the timeout.

                        The default is: in 5

       dev_loss_tmo     Specify  the  number  of seconds the SCSI layer will wait after a problem
                        has been detected on a FC remote port before removing it from the system.
                        This  can  be  set  to  "infinity"  which  sets  it  to  the max value of
                        2147483647 seconds, or 68 years. It will be automatically adjusted to the
                        overall  retry  interval  no_path_retry * polling_interval if a number of
                        retries is given with no_path_retry and the  overall  retry  interval  is
                        longer  than the specified dev_loss_tmo value.  The Linux kernel will cap
                        this value to 600 if fast_io_fail_tmo is not set. See KNOWN ISSUES.

                        The default is: 600

       bindings_file    The  full  pathname  of  the  binding  file   to   be   used   when   the
                        user_friendly_names option is set.

                        The default is: /etc/multipath/bindings

       wwids_file       The  full  pathname of the WWIDs file, which is used by multipath to keep
                        track of the WWIDs for LUNs it has created multipath devices  on  in  the
                        past.

                        The default is: /etc/multipath/wwids

       prkeys_file      The full pathname of the prkeys file, which is used by multipathd to keep
                        track of the persistent reservation key used for a  specific  WWID,  when
                        reservation_key is set to file.

                        The default is /etc/multipath/prkeys

       log_checker_err  If  set to once , multipathd logs the first path checker error at logging
                        level 2. Any later errors are logged at  level  3  until  the  device  is
                        restored.  If  set  to  always  , multipathd always logs the path checker
                        error at logging level 2.

                        The default is: always

       reservation_key  This is the service action reservation key used by mpathpersist. It  must
                        be  set  for  all multipath devices using persistent reservations, and it
                        must be the same as the RESERVATION KEY field of the  PERSISTENT  RESERVE
                        OUT  parameter  list  which  contains  an  8-byte  value  provided by the
                        application client to the device server to identify the I_T nexus.

                        Alternatively, this can be set to file, which will store the  RESERVATION
                        KEY  registered  by mpathpersist in the prkeys_file. multipathd will then
                        use this key to register additional  paths  as  they  appear.   When  the
                        registration  is  removed,  the  RESERVATION  KEY  is  removed  from  the
                        prkeys_file.

                        The default is: <unset>

       retain_attached_hw_handler
                        (Obsolete for kernels >= 4.3) If set  to  yes  and  the  SCSI  layer  has
                        already  attached  a  hardware_handler  to the device, multipath will not
                        force the device to use the hardware_handler specified by  mutipath.conf.
                        If  the  SCSI  layer  has not attached a hardware handler, multipath will
                        continue to use its configured hardware handler.

                        The default is: yes

                        Important  Note:  Linux  kernel  4.3  or  newer  always  behaves  as   if
                        "retain_attached_hw_handler yes" was set.

       detect_prio      If  set  to  yes  ,  multipath  will try to detect if the device supports
                        SCSI-3  ALUA.  If  so,  the  device  will  automatically  use  the  sysfs
                        prioritizer   if   the   required   sysf   attributes   access_state  and
                        preferred_path are supported, or the alua prioritizer if not. If  set  to
                        no , the prioritizer will be selected as usual.

                        The default is: yes

       detect_checker   if  set  to  yes  ,  multipath  will try to detect if the device supports
                        SCSI-3 ALUA. If so, the device will automatically use the tur checker. If
                        set to no , the checker will be selected as usual.

                        The default is: yes

       force_sync       If set to yes , multipathd will call the path checkers in sync mode only.
                        This means that only one checker will run at a time.  This is  useful  in
                        the  case  where  many  multipathd  checkers  running  in parallel causes
                        significant CPU pressure.

                        The default is: no

       strict_timing    If set to yes , multipathd will start  a  new  path  checker  loop  after
                        exactly  one  second,  so  that  each  path  check  will occur at exactly
                        polling_interval seconds. On busy systems path checks might  take  longer
                        than one second; here the missing ticks will be accounted for on the next
                        round.  A warning will  be  printed  if  path  checks  take  longer  than
                        polling_interval seconds.

                        The default is: no

       deferred_remove  If set to yes , multipathd will do a deferred remove instead of a regular
                        remove when the last path device has been deleted.  This  means  that  if
                        the multipath device is still in use, it will be freed when the last user
                        closes it.  If path is added to the multipath device before the last user
                        closes it, the deferred remove will be canceled.

                        The default is: no

       partition_delimiter
                        If  this  value  is not set, when multipath renames a device, it will act
                        just like the kpartx default does, only adding a "p" to names ending in a
                        number.  If  this  parameter  is set, multipath will act like kpartx does
                        with the -p option is used, and always add delimiter.

                        The default is: <unset>

       config_dir       If set to anything other than "", multipath will  search  this  directory
                        alphabetically  for file ending in ".conf" and it will read configuration
                        information  from  them,  just  as  if  it  was  in  /etc/multipath.conf.
                        config_dir must either be "" or a fully qualified directory name.

                        The default is: /etc/multipath/conf.d/

       marginal_path_double_failed_time
                        One  of  the four parameters of supporting path check based on accounting
                        IO error such as intermittent error. When  a  path  failed  event  occurs
                        twice  in marginal_path_double_failed_time seconds due to an IO error and
                        all the other three parameters are set, multipathd will fail the path and
                        enqueue  this  path  into  a  queue of which members are sent a couple of
                        continuous direct reading asynchronous IOs at a fixed sample rate of 10HZ
                        to start IO error accounting process.

                        The default is: no

       marginal_path_err_sample_time
                        One  of  the four parameters of supporting path check based on accounting
                        IO error such as intermittent error. If it is set to a value no less than
                        120,     when     a     path     fail     event     occurs    twice    in
                        marginal_path_double_failed_time second due to an  IO  error,  multipathd
                        will  fail  the  path and enqueue this path into a queue of which members
                        are sent a couple of continuous direct  reading  asynchronous  IOs  at  a
                        fixed sample rate of 10HZ to start the IO accounting process for the path
                        will last for marginal_path_err_sample_time.  If the rate of IO error  on
                        a  particular  path is greater than the marginal_path_err_rate_threshold,
                        then the path will  not  reinstate  for  marginal_path_err_rate_threshold
                        seconds    unless    there    is    only    one    active   path.   After
                        marginal_path_err_recheck_gap_time expires, the path  will  be  requeueed
                        for  rechecking.  If  checking  result  is  good enough, the path will be
                        reinstated.

                        The default is: no

       marginal_path_err_rate_threshold
                        The error rate threshold as  a  permillage  (1/1000).  One  of  the  four
                        parameters  of supporting path check based on accounting IO error such as
                        intermittent error. Refer to marginal_path_err_sample_time. If  the  rate
                        of  IO  errors  on a particular path is greater than this parameter, then
                        the path will not reinstate for marginal_path_err_rate_threshold  seconds
                        unless there is only one active path.

                        The default is: no

       marginal_path_err_recheck_gap_time
                        One  of  the four parameters of supporting path check based on accounting
                        IO     error     such     as     intermittent     error.     Refer     to
                        marginal_path_err_sample_time.  If  this  parameter  is set to a positive
                        value, the failed path of   which  the  IO  error  rate  is  larger  than
                        marginal_path_err_rate_threshold   will  be  kept  in  failed  state  for
                        marginal_path_err_recheck_gap_time             seconds.              When
                        marginal_path_err_recheck_gap_time  seconds  expires,  the  path  will be
                        requeueed for checking. If checking result is good enough, the path  will
                        be reinstated, or else it will keep failed.

                        The default is: no

       delay_watch_checks
                        If  set  to a value greater than 0, multipathd will watch paths that have
                        recently become valid for this many checks. If they fail again while they
                        are  being  watched,  when  they next become valid, they will not be used
                        until they have stayed up for delay_wait_checks checks.

                        The default is: no

       delay_wait_checks
                        If set to a value greater than 0, when a device that  has  recently  come
                        back  online  fails again within delay_watch_checks checks, the next time
                        it comes back online, it will marked and delayed, and not used  until  it
                        has passed delay_wait_checks checks.

                        The default is: no

       find_multipaths  If  set to yes , instead of trying to create a multipath device for every
                        non-blacklisted path, multipath will only create a device if one of three
                        condidions  are met.  1 There are at least two non-blacklisted paths with
                        the same WWID, 2 the user manually forces the creation, by  specifying  a
                        device  with  the  multipath  command, or 3 a path has the same WWID as a
                        multipath device that was previously created  while  find_multipaths  was
                        set  (even if that multipath device doesn't currently exist).  Whenever a
                        multipath device is created  with  find_multipaths  set,  multipath  will
                        remember the WWID of the device, so that it will automatically create the
                        device again, as soon as it sees a path with that WWID. This should allow
                        most  users  to  have multipath automatically choose the correct paths to
                        make into multipath devices, without having to edit the blacklist.

                        The default is: no

       uxsock_timeout   CLI receive timeout in milliseconds.  For  larger  systems  CLI  commands
                        might  timeout before the multipathd lock is released and the CLI command
                        can be processed. This will result  in  errors  like  "timeout  receiving
                        packet"  to  be  returned  from  CLI  commands.   In  these  cases  it is
                        recommended to increase the CLI timeout to avoid those issues.

                        The default is: 1000

       retrigger_tries  Sets the number of times multipathd will try to retrigger a uevent to get
                        the WWID.

                        The default is: 3

       retrigger_delay  Sets the amount of time, in seconds, to wait between retriggers.

                        The default is: 10

       missing_uev_wait_timeout
                        Controls  how  many  seconds  multipathd will wait, after a new multipath
                        device is created, to receive a change event from udev  for  the  device,
                        before  automatically  enabling  device  reloads. Usually multipathd will
                        delay reloads on a device until it receives  a  change  uevent  from  the
                        initial table load.

                        The default is: 30

       skip_kpartx      If  set  to  yes , kpartx will not automatically create partitions on the
                        device.

                        The default is: no

       disable_changed_wwids
                        If set to yes, multipathd will check the path wwid on change events,  and
                        if  it has changed from the wwid of the multipath device, multipathd will
                        disable access to the path until the wwid changes back.

                        The default is: no

       remove_retries   This sets how may times multipath will retry removing a  device  that  is
                        in-use.  Between each attempt, multipath will sleep 1 second.

                        The default is: 0

       max_sectors_kb   Sets  the  max_sectors_kb  device  parameter  on all path devices and the
                        multipath device to the specified value.

                        The default is: <device dependent>

blacklist section

       The blacklist section is used to exclude specific device from inclusion in  the  multipath
       topology.  It  is  most  commonly  used  to  exclude  local  disks  or  LUNs for the array
       controller.

       The following keywords are recognized:

       devnode          Regular expression of the device nodes to be excluded.

                        The  default  is:  ^(ram|raw|loop|fd|md|dm-|sr|scd|st|dcssblk)[0-9]   and
                        ^(td|hd|vd)[a-z]

       wwid             The World Wide Identification of a device.

       property         Regular expression of the udev property to be excluded.

       device           Subsection  for  the  device  description. This subsection recognizes the
                        vendor and product keywords. For a full  description  of  these  keywords
                        please see the devices section description.

blacklist_exceptions section

       The  blacklist_exceptions  section is used to revert the actions of the blacklist section.
       For example to include specific device in the  multipath  topology.  This  allows  one  to
       selectively include devices which would normally be excluded via the blacklist section.

       The following keywords are recognized:

       devnode          Regular expression of the device nodes to be whitelisted.

       wwid             The World Wide Identification of a device.

       property         Regular expression of the udev property to be whitelisted.

                        The default is: (SCSI_IDENT_|ID_WWN)

       device           Subsection  for  the  device  description. This subsection recognizes the
                        vendor and product keywords. For a full  description  of  these  keywords
                        please see the devices section description.

       The  property blacklist and whitelist handling is different from the usual handling in the
       sense that the whitelist has to be set, otherwise the device will be blacklisted. In these
       cases the message blacklisted, udev property missing will be displayed.

multipaths section

       The only recognized attribute for the multipaths section is the multipath subsection.

       The multipath subsection recognizes the following attributes:

       wwid             (Mandatory) Index of the container.

       alias            Symbolic name for the multipath map.

       The  following  attributes  are optional; if not set the default values are taken from the
       defaults or devices section:

              path_grouping_policy
              path_selector
              prio
              prio_args
              failback
              rr_weight
              no_path_retry
              rr_min_io
              rr_min_io_rq
              flush_on_last_del
              features
              reservation_key
              user_friendly_names
              deferred_remove
              marginal_path_err_sample_time
              marginal_path_err_rate_threshold
              marginal_path_err_recheck_gap_time
              marginal_path_double_failed_time
              delay_watch_checks
              delay_wait_checks
              skip_kpartx
              max_sectors_kb

devices section

       The only recognized attribute for the devices section is the device subsection.

       The device subsection recognizes the following attributes:

       vendor, product, revision and product_blacklist are POSIX Extended regex.

       vendor           (Mandatory) Vendor identifier.

       product          (Mandatory) Product identifier.

       revision         Revision identfier.

       product_blacklist
                        Product strings to blacklist for this vendor.

       alias_prefix     The user_friendly_names prefix to use for this device  type,  instead  of
                        the default "mpath".

       hardware_handler The hardware handler to use for this device type.  The following hardware
                        handler are implemented:

                        1 emc       (Hardware-dependent) Hardware handler for DGC class arrays as
                                    CLARiiON CX/AX and EMC VNX and Unity families.

                        1 rdac      (Hardware-dependent)  Hardware handler for LSI/Engenio/NetApp
                                    RDAC class as NetApp SANtricity E/EF Series, and  OEM  arrays
                                    from IBM DELL SGI STK and SUN.

                        1 hp_sw     (Hardware-dependent) Hardware handler for HP/COMPAQ/DEC HSG80
                                    and MSA/HSV arrays with Active/Standby mode exclusively.

                        1 alua      (Hardware-dependent)  Hardware  handler   for   SCSI-3   ALUA
                                    compatible arrays.

                        The default is: <unset>

                        Important Note: Linux kernels 4.3 and newer automatically attach a device
                        handler to known devices (which includes all  devices  supporting  SCSI-3
                        ALUA)   and   disallow   changing   the   handler   afterwards.   Setting
                        hardware_handler for such devices on these kernels has no effect.

       The following attributes are optional; if not set the default values are  taken  from  the
       defaults section:

              path_grouping_policy
              uid_attribute
              path_selector
              path_checker
              prio
              prio_args
              features
              failback
              rr_weight
              no_path_retry
              rr_min_io
              rr_min_io_rq
              fast_io_fail_tmo
              dev_loss_tmo
              flush_on_last_del
              retain_attached_hw_handler
              detect_prio
              detect_checker
              deferred_remove
              marginal_path_err_sample_time
              marginal_path_err_rate_threshold
              marginal_path_err_recheck_gap_time
              marginal_path_double_failed_time
              delay_watch_checks
              delay_wait_checks
              skip_kpartx
              max_sectors_kb

overrides section

       The  overrides section recognizes the following optional attributes; if not set the values
       are taken from the devices or defaults sections:

              path_grouping_policy
              uid_attribute
              getuid_callout
              path_selector
              path_checker
              alias_prefix
              features
              prio
              prio_args
              failback
              rr_weight
              no_path_retry
              rr_min_io
              rr_min_io_rq
              flush_on_last_del
              fast_io_fail_tmo
              dev_loss_tmo
              user_friendly_names
              retain_attached_hw_handler
              detect_prio
              detect_checker
              deferred_remove
              marginal_path_err_sample_time
              marginal_path_err_rate_threshold
              marginal_path_err_recheck_gap_time
              marginal_path_double_failed_time
              delay_watch_checks
              delay_wait_checks
              skip_kpartx

WWID generation

       Multipath uses a World Wide Identification (WWID) to determine which paths belong  to  the
       same device. Each path presenting the same WWID is assumed to point to the same device.

       The WWID is generated by three methods (in the order of preference):

       getuid_callout   Use the specified external program; cf getuid_callout above.  Care should
                        be taken when using this method; the external program needs to be  loaded
                        from  disk  for  execution, which might lead to deadlock situations in an
                        all-paths-down scenario.

       uid_attribute    Use the value of the specified udev attribute;  cf  uid_attribute  above.
                        This  method is preferred to getuid_callout as multipath does not need to
                        call any external programs here.  However,  under  certain  circumstances
                        udev might not be able to generate the requested variable.

       vpd_pg83         If  none  of  the  getuid_callout or uid_attribute parameters are present
                        multipath will try to use the sysfs attribute vpd_pg83  to  generate  the
                        WWID.

KNOWN ISSUES

       The  usage  of  queue_if_no_path  option  can lead to D state processes being hung and not
       killable in situations where all the paths to the LUN go offline. It is advisable  to  use
       the no_path_retry option instead.

       The  use of queue_if_no_path or no_path_retry might lead to a deadlock if the dev_loss_tmo
       setting results in a device being removed while I/O is still queued. The multipath  daemon
       will  update  the  dev_loss_tmo  setting accordingly to avoid this deadlock. Hence if both
       values  are  specified  the  order  of  precedence  is  no_path_retry,   queue_if_no_path,
       dev_loss_tmo.

SEE ALSO

       udev(8), dmsetup(8), multipath(8), multipathd(8).

AUTHORS

       multipath-tools  was developed by Christophe Varoqui, <christophe.varoqui@opensvc.com> and
       others.