OpenSuSE Man Pages

Man Page or Keyword Search:
Man Architecture
Apropos Keyword Search (all sections) Output format
home | help
x SuSE Linux 13.1-RELEASE x
x SuSE Linux 13.1-RELEASEx
MULTIPATH.CONF(5)             File Formats Manual            MULTIPATH.CONF(5)

NAME
       /etc/multipath.conf,  /etc/multipath/conf.d/*.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 mul-
       tipath -t or multipathd show config command.

       Additional configuration can be made in drop-in files under /etc/multi-
       path/conf.d.   Files  ending in .conf in this directory are read in al-
       phabetical order, after reading /etc/multipath.conf.  They use the same
       syntax as /etc/multipath.conf itself, and support all sections and key-
       words. If a keyword occurs in the same section in multiple  files,  the
       last occurrence will take precedence over all others.

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 recog-
       nized keywords for attributes or subsections depend on the  section  in
       which they occur.

       <attribute>  and  <value> must be on a single line.  <attribute> is one
       of the keywords listed in this man page.  <value> is  either  a  simple
       word (containing no whitespace and none of the characters '"', '#', and
       '!') or one string enclosed in double quotes ("..."). Outside a  quoted
       string,  text  starting  with '#', and '!' is regarded as a comment and
       ignored until the end of the line. Inside a quoted string, '#' and  '!'
       are  normal  characters,  and  whitespace is preserved.  To represent a
       double quote character inside a double quoted string, use two  consecu-
       tive  double  quotes  ('""').  Thus '2.5" SSD' can be written as "2.5""
       SSD".

       Opening braces ('{') must follow the  (sub)section  name  on  the  same
       line.  Closing braces ('}') that mark the end of a (sub)section must be
       the only non-whitespace character on the line.  Whitespace  is  ignored
       except  inside  double  quotes, thus the indentation shown in the above
       example is helpful for human readers but not mandatory.

       Note on regular expressions: The /etc/multipath.conf syntax allows many
       attribute  values to be specified as POSIX Extended Regular Expressions
       (see regex(7)). These regular expressions are  case-sensitive  and  not
       anchored,  thus the expression "bar" matches "barbie", "rhabarber", and
       "wunderbar", but not "Barbie". To  avoid  unwanted  substring  matches,
       standard regular expression syntax using the special characters "^" and
       "$" can be used.

       The following section keywords are recognized:

       defaults         This section defines  default  values  for  attributes
                        which are used whenever no values are given in the ap-
                        propriate 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  de-
                        tails  on the WWID generation see section WWID genera-
                        tion below. Attributes set in this section take prece-
                        dence over all others.

       devices          This section defines the device-specific settings. De-
                        vices are identified by vendor, product, and revision.

       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 ver-
                        bosity level. Valid levels are between 0 and 6.

                        The default is: 2

       polling_interval Interval between two path checks in seconds. For prop-
                        erly  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  un-
                        derlying  block  devices.  Possible values are yes and
                        no.

                        The default is: no

       multipath_dir    (Deprecated) This option is not supported anymore, and
                        the value is ignored.

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

                        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.

                        historical-service-time 0
                                    (Since 5.8 kernel) Choose the path for the
                                    next bunch of I/O based on the  estimation
                                    of  future  service time based on the his-
                                    tory of previous  I/O  submitted  to  each
                                    path.

                        The default is: service-time 0

       path_grouping_policy
                        The  default path grouping policy to apply to unspeci-
                        fied 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 pro-
                                    grams  specified  as  a  global,  per-con-
                                    troller  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.

                        group_by_tpg
                                    One priority group per  ALUA  target  port
                                    group.  In  order  to use this policy, all
                                    paths in the multipath  device  must  have
                                    prio set to alua.

                        The default is: failover

       detect_pgpolicy  If set to yes and all path devices are configured with
                        either the alua or sysfs  prioritizer,  the  multipath
                        device   will   automatically  use  the  group_by_prio
                        path_grouping_policy. If set to  no,  the  path_group-
                        ing_policy will be selected as usual.

                        The default is: yes

       detect_pgpolicy_use_tpg
                        If  both  this  and detect_pgpolicy are set to yes and
                        all path devices are configured with either  the  alua
                        or  sysfs prioritizer, the multipath device will auto-
                        matically use the  group_by_tpg  path_grouping_policy.
                        If  set  to  no,  the path_grouping_policy will be se-
                        lected by the  method  described  for  detect_pgpolicy
                        above.

                        The default is: no

       pg_timeout       (Deprecated) This option is not supported anymore, and
                        the value is ignored.

       uid_attrs        Setting this option activates merging uevents by WWID,
                        which  may improve uevent processing efficiency. More-
                        over, it's an alternative method to configure the udev
                        properties  to use for determining unique path identi-
                        fiers (WWIDs).

                        The value of this option is a space separated list  of
                        records   like  "type:ATTR",  where  type  is  matched
                        against the beginning of the device  node  name  (e.g.
                        sd:ATTR matches sda), and ATTR is the name of the udev
                        property to use for matching devices.

                        If this option is configured and  matches  the  device
                        node  name of a device, it overrides any other config-
                        ured  methods for determining the WWID  for  this  de-
                        vice.

                        This  option cannot be changed during runtime with the
                        multipathd reconfigure command.

                        The default is: <unset>. To enable uevent merging, set
                        it e.g. to "sd:ID_SERIAL dasd:ID_UID nvme:ID_WWN".

       uid_attribute    The  udev attribute providing a unique path identifier
                        (WWID). If uid_attribute is set to the  empty  string,
                        WWID  determination  is  done  using  the sysfs method
                        rather than using udev (not recommended in production;
                        see WWID generation below).

                        The default is: ID_SERIAL, for SCSI devices

                        The default is: ID_UID, for DASD devices

                        The default is: ID_WWN, for NVMe devices

       getuid_callout   (Deprecated) This option is not supported anymore, and
                        the value is ignored.

       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 prior-
                                    ity. 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 families with Failover
                                    Mode 1 (Passive Not Ready(PNR)).

                        alua        (Hardware-dependent)  Generate  the   path
                                    priority  based  on  the  SCSI-3 ALUA set-
                                    tings. This prioritizer  accepts  the  op-
                                    tional prio_arg exclusive_pref_bit.

                        ontap       (Hardware-dependent)   Generate  the  path
                                    priority for NetApp ONTAP  FAS/AFF  Series
                                    and  rebranded  arrays,  with ONTAP native
                                    mode(not ALUA).

                        rdac        (Hardware-dependent)  Generate  the   path
                                    priority for LSI/Engenio/NetApp RDAC class
                                    as NetApp SANtricity E/EF Series  and  re-
                                    branded  arrays, with "Linux DM-MP (Kernel
                                    3.9 or earlier)" option.

                        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 families  of  ar-
                                    rays other than AMS 2000.

                        random      Generate  a  random priority between 1 and
                                    10.

                        weightedpath
                                    Generate the path priority  based  on  the
                                    regular  expression  and the priority pro-
                                    vided as argument. Requires prio_args key-
                                    word.

                        path_latency
                                    Generate  the path priority based on a la-
                                    tency algorithm.  Requires prio_args  key-
                                    word.

                        ana         (Hardware-dependent)   Generate  the  path
                                    priority based on the NVMe ANA settings.

                        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. Re-
                                    quires prio_args keyword.

                        The default depends on the detect_prio setting: If de-
                        tect_prio is yes (default), the default priority algo-
                        rithm is sysfs (except for NetAPP E/EF  Series,  where
                        it  is alua). If detect_prio is no, the default prior-
                        ity 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|dev-
                                    name|serial|wwn> <regex1> <prio1> <regex2>
                                    <prio2> ..."

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

                                    devname Regex  can  be of device name for-
                                            mat. For example: sda , sd.e

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

                                    wwn     Regex   can   be   of   the   form
                                            "host_wwnn:host_wwpn:tar-
                                            get_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.red-
                                            hat.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  la-
                                            tency.  Valid Values: Integer, [2,
                                            200].

                                    base_num
                                            The base number value of logarith-
                                            mic  scale, used to partition dif-
                                            ferent priority ranks. Valid  Val-
                                            ues: Integer, [2, 10]. And Max av-
                                            erage 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 IN-
                                            QUIRY, in ms.

                        iet

                                    preferredip=...
                                            (Mandatory) Th  preferred  IP  ad-
                                            dress, 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  be-
                                    fore  pg_init  retry, it must be between 0
                                    and 60000.

                        queue_mode <mode>
                                    (Since kernel  4.8)  Select  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.  Be-
                                    fore  kernel  4.20  The default depends on
                                    the kernel parameter dm_mod.use_blk_mq. It
                                    is  mq if the latter is set, and rq other-
                                    wise. Since kernel 4.20, rq  and  mq  both
                                    correspond  to  block-multiqueue.  Once  a
                                    multipath device  has  been  created,  its
                                    queue_mode  cannot  be  changed.  nvme:tcp
                                    paths are only supported in multipath  de-
                                    vices  with  queue_mode set to bio. multi-
                                    path will automatically set this when cre-
                                    ating a device with nvme:tcp paths.

                        no_partitions
                                    (Deprecated,  superseded  by  skip_kpartx)
                                    Disable  automatic  partitions  generation
                                    via kpartx. This is supported for compati-
                                    bility  with  earlier  SUSE  releases.  If
                                    skip_kpartx  is  set,  it takes precedence
                                    over this feature.

                        The default is: 0

       path_checker     The default method used to determine the path's state.
                        The synchronous checkers (all except tur and directio)
                        will cause multipathd to pause most activity,  waiting
                        up to checker_timeout seconds for the path to respond.
                        The asynchronous checkers (tur and directio) will  not
                        pause multipathd. Instead, multipathd will check for a
                        response once per second, until  checker_timeout  sec-
                        onds have elapsed. Possible values are:

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

                        tur         Issue a TEST UNIT READY command to the de-
                                    vice.

                        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  Ne-
                                    tApp SANtricity E/EF Series, and rebranded
                                    arrays.

                        directio    Read the first  sector  with  direct  I/O.
                                    This  checker  could  cause  spurious path
                                    failures  under  high   load.   Increasing
                                    checker_timeout can help with this.

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

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

                        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 prior-
                                    ity pathgroup that contains active paths.

                        manual      Do not perform automatic failback.

                        followover  Used  to  deal with multiple computers ac-
                                    cessing 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 au-
                                    tomatically failing back when another node
                                    requested the failover.

                        values > 0  Deferred  failback  (time to defer in sec-
                                    onds).

                        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  file  descrip-
                        tors  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 greater
                        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". Possi-
                        ble 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 queue-
                                    ing.

                        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 de-
                        vices that set no_path_retry. If  a  machine  is  shut
                        down  while all paths to a device are down, it is pos-
                        sible to hang waiting for I/O to return from  the  de-
                        vice after multipathd has been stopped. Without multi-
                        pathd 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 prob-
                        lem.

                        The default is: no

       checker_timeout  Specify  the timeout to use for path checkers and pri-
                        oritizers, in seconds.  Only prioritizers  that  issue
                        scsi commands use checker_timeout.  If a path does not
                        respond to the checker command  after  checker_timeout
                        seconds have elapsed, it is considered down.

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

       allow_usb_devices
                        If  set to no , all USB devices will be skipped during
                        path discovery. If you intend to use multipath on  USB
                        attached devices, set this to yes.

                        The default is: no

       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/multi-
                        path/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 mul-
                        tipaths 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: 5

       dev_loss_tmo     Specify the number of seconds the SCSI layer will wait
                        after a connection loss has been detected on a  remote
                        port  before  removing it from the system. This can be
                        set to "infinity", which effectively means  136  years
                        (2^32-1  seconds).   This parameter is only applied to
                        Fibre Channel and SAS devices.

                        The value of dev_loss_tmo is restricted by other  set-
                        tings.   If  fast_io_fail_tmo  is  set  to  a positive
                        value, multipathd will make sure  that  the  value  of
                        dev_loss_tmo    is   larger   than   no_path_retry   *
                        polling_interval.  If fast_io_fail_tmo is not set, the
                        kernel  limits  the dev_loss_tmo value to 600 seconds.
                        In  this  case,  the  user  has  to  make  sure   that
                        no_path_retry   is   smaller   than   dev_loss_tmo   /
                        polling_interval. In  particular,  no_path_retry  must
                        not be set to "queue". See KNOWN ISSUES.

                        When path devices reappear after a connection loss, it
                        is much easier for the kernel to simply reactivate  an
                        inactive  device  than  to re-add a previously deleted
                        one. It is therefore recommended to  set  dev_loss_tmo
                        to  a  large  value  within the restrictions mentioned
                        above.

                        Fibre Channel and SAS devices have  hardware-dependent
                        defaults,  which are left unchanged if dev_loss_tmo is
                        not specified. For a few storage  arrays,  the  multi-
                        path-tools built-in settings override the default. Run
                        multipath -T to see the settings for your device.

                        The default is: <hardware dependent>

       eh_deadline      Specify the maximum number of seconds the  SCSI  layer
                        will  spend  doing  error  handling  when scsi devices
                        fail. After this timeout the scsi layer will perform a
                        full HBA reset. Setting this may be necessary in cases
                        where the rport is never lost, so fast_io_fail_tmo and
                        dev_loss_tmo  will  never trigger, but (frequently due
                        to load) scsi commands still hang. Note: when the scsi
                        error handler performs the HBA reset, all target paths
                        on that HBA will be affected. eh_deadline should  only
                        be set in cases where all targets on the affected HBAs
                        are multipathed.

                        The default is: <unset>

       max_retries      Specify the maximum number of  times  the  SCSI  layer
                        will  retry  IO commands for some types of SCSI errors
                        before returning failure. Setting this can be  helpful
                        for  cases  where IO commands hang and timeout. By de-
                        fault, the SCSI layer will retry IOs 5 times. Reducing
                        this  value  will allow multipath to retry the IO down
                        another path sooner. Valid values are 0 through 5.

                        The default is: <unset>

       bindings_file    (Deprecated) This option is not supported anymore, and
                        will be ignored.

                        The compiled-in value is: /etc/multipath/bindings

       wwids_file       (Deprecated) This option is not supported anymore, and
                        will be ignored.

                        The compiled-in value is: /etc/multipath/wwids

       prkeys_file      (Deprecated) This option is not supported anymore, and
                        will be ignored.

                        The compiled-in value 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 pro-
                        vided by the application client to the  device  server
                        to identify the I_T nexus. If the --param-aptpl option
                        is used when registering the  key  with  mpathpersist,
                        :aptpl  must be appended to the end of the reservation
                        key.

                        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  re-
                        moved from the prkeys_file. The prkeys file will auto-
                        matically keep track of whether the key was registered
                        with --param-aptpl.

                        The default is: <unset>

       all_tg_pt        Set the 'all targets ports' flag when registering keys
                        with mpathpersist. Some arrays automatically  set  and
                        clear  registration  keys  on  all target ports from a
                        host,  instead  of  per  target  port  per  host.  The
                        ALL_TG_PT  flag must be set to successfully use mpath-
                        persist on these arrays. Setting this option is  iden-
                        tical to calling mpathpersist with --param-alltgpt

                        The default is: no

       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 /etc/multipath.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 be-
                        haves 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  re-
                        quired   sysfs   attributes   access_state   and  pre-
                        ferred_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 sec-
                        onds. On busy systems path checks  might  take  longer
                        than  one  second;  here the missing ticks will be ac-
                        counted for on the next  round.   A  warning  will  be
                        printed if path checks take longer than polling_inter-
                        val 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 de-
                        vice  before the last user closes it, the deferred re-
                        move will be canceled.

                        The default is: no

       partition_delimiter
                        This parameter  controls  how  multipath  chooses  the
                        names of partition devices of multipath maps if a mul-
                        tipath map is renamed (e.g. if a map alias is added or
                        changed).  If  this parameter is set to a string other
                        than "/UNSET/" (even the empty string), multipath  in-
                        serts  that  string  between device name and partition
                        number to construct the partition device name.  Other-
                        wise (i.e. if this parameter is unset or has the value
                        "/UNSET/"), the behavior depends on the map  name:  if
                        it ends in a digit, a "p" is inserted between name and
                        partition number; otherwise, the partition  number  is
                        simply appended.  Distributions may use a non-null de-
                        fault value for this option; in this  case,  the  user
                        must  set  it to "/UNSET/" to obtain the original <un-
                        set> behavior. Use multipath -T to check  the  current
                        settings.

                        The default is: <unset>

       config_dir       (Deprecated) This option is not supported anymore, and
                        the value is ignored.

                        The compiled-in value is: /etc/multipath/conf.d

       san_path_err_threshold
                        If set to a value  greater  than  0,  multipathd  will
                        watch  paths  and check how many times a path has been
                        failed due to errors.If the number of  failures  on  a
                        particular     path     is     greater     than    the
                        san_path_err_threshold, then the path will  not  rein-
                        state   till  san_path_err_recovery_time.  These  path
                        failures  should  occur  within  a   san_path_err_for-
                        get_rate  checks,  if not we will consider the path is
                        good enough to reinstate. See "Shaky paths  detection"
                        below.

                        The default is: no

       san_path_err_forget_rate
                        If  set  to  a  value  greater than 0, multipathd will
                        check whether the  path  failures  has  exceeded   the
                        san_path_err_threshold  within  this  many  checks i.e
                        san_path_err_forget_rate . If so we will not reinstate
                        the  path  till san_path_err_recovery_time. See "Shaky
                        paths detection" below.

                        The default is: no

       san_path_err_recovery_time
                        If set to a value greater than 0, multipathd will make
                        sure   that   when  path  failures  has  exceeded  the
                        san_path_err_threshold within san_path_err_forget_rate
                        then  the  path  will  be  placed  in failed state for
                        san_path_err_recovery_time               duration.Once
                        san_path_err_recovery_time  has timeout  we will rein-
                        state the failed  path  .   san_path_err_recovery_time
                        value  should be in secs.  See "Shaky paths detection"
                        below.

                        The default is: no

       marginal_path_double_failed_time
                        One of the four parameters of  supporting  path  check
                        based  on accounting IO error such as intermittent er-
                        ror. When a path failed event  occurs  twice  in  mar-
                        ginal_path_double_failed_time seconds due to an IO er-
                        ror and all the other three parameters are set, multi-
                        pathd  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.  See
                        "Shaky paths detection" below.

                        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  er-
                        ror.  If it is set to a value no less than 120, when a
                        path fail event  occurs  twice  in  marginal_path_dou-
                        ble_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 di-
                        rect 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     mar-
                        ginal_path_err_recheck_gap_time seconds  unless  there
                        is     only    one    active    path.    After    mar-
                        ginal_path_err_recheck_gap_time expires, the path will
                        be requeued for rechecking. If checking result is good
                        enough, the path will be reinstated. See "Shaky  paths
                        detection" below.

                        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. Re-
                        fer 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  mar-
                        ginal_path_err_recheck_gap_time  seconds  unless there
                        is only one active path. See "Shaky  paths  detection"
                        below.

                        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  er-
                        ror.  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 mar-
                        ginal_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  ex-
                        pires,  the  path  will  be  requeued for checking. If
                        checking result is good enough, the path will be rein-
                        stated,  or else it will keep failed. See "Shaky paths
                        detection" below.

                        The default is: no

       delay_watch_checks
                        (Deprecated) This option is deprecated, and mapped  to
                        san_path_err_forget_rate.   If  this is set to a value
                        greater than 0 and no san_path_err  options  are  set,
                        san_path_err_forget_rate  will  be set to the value of
                        delay_watch_checks and san_path_err_threshold will  be
                        set   to  1.   See  the  san_path_err_forget_rate  and
                        san_path_err_threshold options, and "Shaky  paths  de-
                        tection" below for more information.

                        The default is: no

       delay_wait_checks
                        (Deprecated)  This option is deprecated, and mapped to
                        san_path_err_recovery_time.  If this is set to a value
                        greater  than  0  and no san_path_err options are set,
                        san_path_err_recovery_time will be set to the value of
                        delay_wait_checks   times  max_polling_interval.  This
                        will give approximately the  same  wait  time  as  de-
                        lay_wait_checks       previously      did.       Also,
                        san_path_err_threshold will  be  set  to  1.  See  the
                        san_path_err_recovery_time  and san_path_err_threshold
                        options, and "Shaky paths detection"  below  for  more
                        information.

                        The default is: no

       marginal_pathgroups
                        If  set  to  off, the delay_*_checks, marginal_path_*,
                        and san_path_err_*  options  will  keep  marginal,  or
                        "shaky",  paths  from being reinstated until they have
                        been monitored for some time. This  can  cause  situa-
                        tions  where  all  non-marginal paths are down, and no
                        paths are usable until multipathd detects this and re-
                        instates  a  marginal path. If the multipath device is
                        not configured to queue IO in this case, it can  cause
                        IO  errors  to  occur,  even though there are marginal
                        paths available.  However, if this option  is  set  to
                        on,  when  one  of the marginal path detecting methods
                        determines that a path is marginal, it will  be  rein-
                        stated  and  placed  in a separate pathgroup that will
                        only be used after  all  the  non-marginal  pathgroups
                        have  been  tried first. This prevents the possibility
                        of IO errors occurring while marginal paths are  still
                        usable. After the path has been monitored for the con-
                        figured time, and is declared healthy, it will be  re-
                        turned to its normal pathgroup.  If this option is set
                        to fpin, multipathd will receive  fpin  notifications,
                        set path states to "marginal" accordingly, and regroup
                        paths as described for on. This option can't  be  used
                        in  combination with other options for "Shaky path de-
                        tection" (see below). Note: If this is  set  to  fpin,
                        the marginal_path_* and san_path_err_* options are im-
                        plicitly set  to  no.  Also,  this  option  cannot  be
                        switched either to or from fpin on a multipathd recon-
                        figure. multipathd must be restarted for the change to
                        take  effect.   See  "Shaky paths detection" below for
                        more information.

                        The default is: off

       find_multipaths  This option controls whether multipath and  multipathd
                        try  to create multipath maps over non-blacklisted de-
                        vices they encounter. This matters a) when a device is
                        encountered  by multipath -u during udev rule process-
                        ing (a device is blocked from  further  processing  by
                        higher layers - such as LVM - if and only if it's con-
                        sidered a valid multipath device path),  and  b)  when
                        multipathd  detects a new device. The following values
                        are possible:

                        strict    Both multipath  and  multipathd  treat  only
                                  such devices as multipath devices which have
                                  been part of a multipath map previously, and
                                  which    are   therefore   listed   in   the
                                  wwids_file. Users can manually set up multi-
                                  path  maps using the multipathd add map com-
                                  mand. Once set up manually, the map  is  re-
                                  membered  in  the wwids file and will be set
                                  up automatically in the future.

                        off       Multipath behaves  like  strict.  Multipathd
                                  behaves like greedy.  no or 0 is accepted as
                                  an alias for off.

                        on        Both multipathd and multipath treat a device
                                  as  multipath  device  if the conditions for
                                  strict are met, or  if  at  least  two  non-
                                  blacklisted  paths  with  the same WWID have
                                  been detected. yes or 1 is  accepted  as  an
                                  alias for on.

                        greedy    Both  multipathd  and  multipath treat every
                                  non-blacklisted device as  multipath  device
                                  path.

                        smart     This  differs  from find_multipaths yes only
                                  in the way it treats new devices  for  which
                                  only  one  path  has been detected yet. When
                                  such a device is first encountered  in  udev
                                  rules,  it is treated as a multipath device.
                                  multipathd waits  whether  additional  paths
                                  with the same WWID appears. If that happens,
                                  it sets up a multipath map.  If  it  doesn't
                                  happen  until  a timeout expires, or if set-
                                  ting up the map fails, a new uevent is trig-
                                  gered for the device; at second encounter in
                                  the udev rules, the device will  be  treated
                                  as non-multipath and passed on to upper lay-
                                  ers.  Note: this may cause delays during de-
                                  vice  detection if there are single-path de-
                                  vices which aren't blacklisted.

                        The default on SUSE distributions is: greedy

       find_multipaths_timeout
                        Timeout, in seconds, to wait for additional paths  af-
                        ter   detecting  the  first  one,  if  find_multipaths
                        "smart" (see above) is set. If the value is  positive,
                        this  timeout is used for all unknown, non-blacklisted
                        devices encountered. If the value is negative  (recom-
                        mended),  it's  only  applied  to "known" devices that
                        have an entry in multipath's hardware table, either in
                        the built-in table or in a device section; other ("un-
                        known") devices will use a timeout of only 1 second to
                        avoid  booting  delays.  The  value  0  means "use the
                        built-in default". If find_multipath has a value other
                        than smart, this option has no effect.

                        The  default is: -10 (10s for known and 1s for unknown
                        hardware)

       uxsock_timeout   CLI receive timeout in milliseconds. For  larger  sys-
                        tems  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: 4000

       retrigger_tries  Sets the number of times multipathd will  try  to  re-
                        trigger 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
                        (Deprecated) This option is not supported anymore, and
                        the value is ignored.

       remove_retries   This  sets how may times multipath will retry removing
                        a device that is in-use.  Between each attempt, multi-
                        path 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:  in  /sys/block/<dev>/queue/max_sec-
                        tors_kb

       ghost_delay      Sets the number of seconds that  multipath  will  wait
                        after  creating  a device with only ghost paths before
                        marking it ready for use in systemd.  This  gives  the
                        active  paths time to appear before the multipath runs
                        the hardware handler to switch the ghost paths to  ac-
                        tive ones. Setting this to 0 or no makes multipath im-
                        mediately mark a  device  with  only  ghost  paths  as
                        ready.

                        The default is: no

       auto_resize      Controls  when  multipathd will automatically resize a
                        multipath device.  If set to never, multipath  devices
                        must always be manually resized by either running mul-
                        tipathd resize map <name>.  If set to grow_only,  when
                        multipathd  detects  that  all of a multipath device's
                        paths have increased in size,  it  will  automatically
                        grow  the  multipath device to the new size. If set to
                        grow_shrink, multipathd will also automatically shrink
                        the  device  once it detects all of its paths have de-
                        creased in size.

                        The default is: never

       enable_foreign   Enables or disables  foreign  libraries  (see  section
                        FOREIGN MULTIPATH SUPPORT below). The value is a regu-
                        lar expression; foreign libraries are loaded if  their
                        name (e.g. "nvme") matches the expression. By default,
                        no foreign libraries are enabled. Set this  to  "nvme"
                        to  enable  NVMe  native multipath support, or ".*" to
                        enable all foreign libraries.

                        The default is: "NONE"

       recheck_wwid     If set to yes, when a failed  path  is  restored,  its
                        wwid  is  rechecked. If the wwid has changed, the path
                        is removed from the current multipath device, and  re-
                        added  as  a  new path. Multipathd will also recheck a
                        path's wwid if it is manually  re-added.  This  option
                        only works for SCSI devices that are configured to use
                        the default uid_attribute,  ID_SERIAL,  or  sysfs  for
                        getting their wwid.

                        The default is: no

blacklist and blacklist_exceptions sections
       The blacklist section is used to exclude specific devices from the mul-
       tipath topology. It is most commonly used to  exclude  local  disks  or
       non-disk  devices  (such as LUNs for the storage array controller) from
       being handled by multipath-tools.

       In the blacklist and blacklist_exceptions sections, starting  a  quoted
       value with an exclamation mark "!" will invert the matching of the rest
       of the regular expression. For instance,  "!^sd[a-z]"  will  match  all
       values  that  do  not start with "sd[a-z]". The exclamation mark can be
       escaped "\!" to match a literal ! at the start of a regular expression.
       Note:  The exclamation mark must be inside quotes, otherwise it will be
       treated as starting a comment.

       The blacklist_exceptions section is used to revert the actions  of  the
       blacklist section. This allows one to selectively include ("whitelist")
       devices which would normally be excluded via the blacklist  section.  A
       common usage is to blacklist "everything" using a catch-all regular ex-
       pression, and create specific blacklist_exceptions  entries  for  those
       devices that should be handled by multipath-tools.

       The  following  keywords  are recognized in both sections. The defaults
       are empty unless explicitly stated.

       devnode          Regular expression matching the device nodes to be ex-
                        cluded/included.

                        The  default blacklist consists of the regular expres-
                        sion  "!^(sd[a-z]|dasd[a-z]|nvme[0-9])".  This  causes
                        all device types other than scsi, dasd, and nvme to be
                        excluded from multipath handling by default.

       wwid             Regular expression for the World Wide Identifier of  a
                        device to be excluded/included.

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

       property         Regular expression for an udev property.  All  devices
                        that   have  matching  udev  properties  will  be  ex-
                        cluded/included.  The handling of the property keyword
                        is  special,  because  devices  must have at least one
                        whitelisted udev property; otherwise  they're  treated
                        as  blacklisted,  and  the  message "blacklisted, udev
                        property missing" is displayed in the logs.

                        Note: The behavior of this option has changed in  mul-
                        tipath-tools  0.8.2  compared  to  previous  versions.
                        Blacklisting by missing properties is only applied  to
                        devices  which  do  have  the  property  specified  by
                        uid_attribute (e.g. ID_SERIAL) set. Previously, it was
                        applied  to  every device, possibly causing devices to
                        be blacklisted because of temporary I/O  error  condi-
                        tions.

                        The      default      blacklist      exception     is:
                        (SCSI_IDENT_|ID_WWN), causing  well-behaved  SCSI  de-
                        vices  and devices that provide a WWN (World Wide Num-
                        ber) to be included, and all others to be excluded.

       protocol         Regular expression for the protocol of a device to  be
                        excluded/included.

                        The  protocol  strings  that  multipath recognizes are
                        scsi:fcp,  scsi:spi,  scsi:ssa,  scsi:sbp,   scsi:srp,
                        scsi:iscsi, scsi:sas, scsi:adt, scsi:ata, scsi:unspec,
                        nvme:pcie, nvme:rdma,  nvme:fc,  nvme:tcp,  nvme:loop,
                        nvme:apple-nvme,  nvme:unspec,  ccw, cciss, and undef.
                        The protocol that a path is using  can  be  viewed  by
                        running multipathd show paths format "%d %P"

       For every device, these 5 blacklist criteria are evaluated in the order
       "property, devnode, device, protocol, wwid". If a device turns  out  to
       be  blacklisted by any criterion, it's excluded from handling by multi-
       pathd, and the later criteria aren't evaluated anymore. For each crite-
       rion,  the  whitelist  takes  precedence over the blacklist if a device
       matches both.

       Note: Besides the blacklist and whitelist, other configuration  options
       such as find_multipaths have an impact on whether or not a given device
       is handled by multipath-tools.

multipaths section
       The multipaths section allows setting attributes of multipath maps. The
       attributes  that  are  set  via the multipaths section (see list below)
       take precedence over all other configuration settings, including  those
       from the overrides section.

       The  only recognized attribute for the multipaths section is the multi-
       path subsection. If there are multiple multipath subsections matching a
       given  WWID,  the  contents  of these sections are merged, and settings
       from later entries take precedence.

       The multipath subsection recognizes the following attributes:

       wwid             (Mandatory) World Wide Identifier. Detected  multipath
                        maps  are  matched against this attribute.  Note that,
                        unlike the wwid attribute in  the  blacklist  section,
                        this is not a regular expression or a substring; WWIDs
                        must match exactly inside the multipaths section.

       alias            Symbolic name for the multipath map. This takes prece-
                        dence  over  a an entry for the same WWID in the bind-
                        ings_file.

       The following attributes are optional; if not set  the  default  values
       are taken from the overrides, devices, or defaults 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
              san_path_err_threshold
              san_path_err_forget_rate
              san_path_err_recovery_time
              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
              ghost_delay

devices section
       Important:
           The built-in hardware device table of multipath-tools is created by
           members of the Linux community in the hope that it will be  useful.
           The  existence of an entry for a given storage product in the hard-
           ware table does not imply that the product vendor supports, or  has
           tested,  the  product with multipath-tools in any way.  Always con-
           sult the vendor's official documentation for support-related infor-
           mation.

       multipath-tools  have  a built-in device table with reasonable defaults
       for more than 100 known multipath-capable storage devices. The  devices
       section  can  be used to override these settings. If there are multiple
       matches for a given device, the attributes of all matching entries  are
       applied to it.  If an attribute is specified in several matching device
       subsections, later entries take precedence. Thus, entries in files  un-
       der  config_dir (in reverse alphabetical order) have the highest prece-
       dence, followed by entries in /etc/multipath.conf; the  built-in  hard-
       ware  table  has  the  lowest  precedence. Inside a configuration file,
       later entries have higher precedence than earlier ones.

       The only recognized attribute for the devices  section  is  the  device
       subsection.  Devices detected in the system are matched against the de-
       vice entries using the vendor, product, and revision fields, which  are
       all POSIX Extended regular expressions (see regex(7)).

       The  vendor,  product, and revision fields that multipath or multipathd
       detect for devices in a system depend on the device type. For SCSI  de-
       vices,  they  correspond  to  the respective fields of the SCSI INQUIRY
       page. In general, the command 'multipathd show paths  format  "%d  %s"'
       command  can  be used to see the detected properties for all devices in
       the system.

       The device subsection recognizes the following attributes:

       vendor           (Mandatory) Regular expression  to  match  the  vendor
                        name.

       product          (Mandatory)  Regular  expression  to match the product
                        name.

       revision         Regular expression to match the product  revision.  If
                        not specified, any revision matches.

       product_blacklist
                        Products  with  the  given vendor matching this string
                        are blacklisted. This is equivalent to a device  entry
                        in the blacklist section with the vendor attribute set
                        to this entry's vendor, and the product attribute  set
                        to the value of product_blacklist.

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

       vpd_vendor       The vendor specific vpd page  information,  using  the
                        vpd  page abbreviation.  The vpd page abbreviation can
                        be found by running sg_vpd  -e.  multipathd  will  use
                        this information to gather device specific information
                        that can be displayed with the  %g  wildcard  for  the
                        multipathd  show maps format and multipathd show paths
                        format commands. Currently only the hp3par vpd page is
                        supported.

       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 families with Failover Mode 1 (Passive
                                    Not Ready(PNR)).

                        1 rdac      (Hardware-dependent)  Hardware handler for
                                    LSI/Engenio/NetApp RDAC  class  as  NetApp
                                    SANtricity  E/EF  Series and rebranded ar-
                                    rays, with "Linux  DM-MP  (Kernel  3.9  or
                                    earlier)" option.

                        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.

                        1 ana       (Hardware-dependent) Hardware handler  for
                                    NVMe ANA compatible arrays.

                        The default is: <unset>

                        Important  Note: Linux kernels 4.3 and newer automati-
                        cally attach a device handler to known devices  (which
                        includes  all devices supporting SCSI-3 ALUA) and dis-
                        allow changing the handler afterwards.  Setting  hard-
                        ware_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
              eh_deadline
              flush_on_last_del
              user_friendly_names
              retain_attached_hw_handler
              detect_prio
              detect_checker
              deferred_remove
              san_path_err_threshold
              san_path_err_forget_rate
              san_path_err_recovery_time
              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
              ghost_delay
              all_tg_pt

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
              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
              eh_deadline
              user_friendly_names
              retain_attached_hw_handler
              detect_prio
              detect_checker
              deferred_remove
              san_path_err_threshold
              san_path_err_forget_rate
              san_path_err_recovery_time
              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
              ghost_delay
              all_tg_pt

       The overrides section also recognizes the optional protocol subsection,
       and can contain multiple protocol subsections. Path devices are matched
       against the protocol subsection using  the  mandatory  type  attribute.
       Attributes  in  a matching protocol subsection take precedence over at-
       tributes in the rest of the overrides section. If  there  are  multiple
       matching protocol subsections, later entries take precedence.

       protocol subsection
              The  protocol  subsection recognizes the following mandatory at-
              tribute:

              type   The protocol string of the path device. The possible val-
                     ues are scsi:fcp, scsi:spi, scsi:ssa, scsi:sbp, scsi:srp,
                     scsi:iscsi, scsi:sas,  scsi:adt,  scsi:ata,  scsi:unspec,
                     nvme:pcie,   nvme:rdma,   nvme:fc,  nvme:tcp,  nvme:loop,
                     nvme:apple-nvme, nvme:unspec, ccw, cciss, and undef. This
                     is  not  a  regular  expression. the path device protocol
                     string must match exactly. The protocol that  a  path  is
                     using can be viewed by running multipathd show paths for-
                     mat "%d %P"

              The following attributes are optional; if not set,  the  default
              values  are  taken from the overrides, devices, or defaults sec-
              tion:

                     fast_io_fail_tmo
                     dev_loss_tmo
                     eh_deadline

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 four methods (in the order of preference):

       uid_attrs        The WWID is derived from udev attributes  by  matching
                        the device node name; cf uid_attrs above.

       uid_attribute    Use  the  value  of  the  specified udev attribute; cf
                        uid_attribute above.

       sysfs            Try to determine the WWID from sysfs attributes.   For
                        SCSI  devices,  this  means  reading the Vital Product
                        Data (VPD) page "Device Identification" (0x83).

       The default settings (using udev and uid_attribute configured from  the
       built-in  hardware table) should work fine in most scenarios. Users who
       want to enable uevent merging must set uid_attrs.

Shaky paths detection
       A common problem in SAN setups is the occurrence  of  intermittent  er-
       rors:  a  path  is  unreachable, then reachable again for a short time,
       disappears again, and so forth. This happens typically on unstable  in-
       terconnects.  It  is  undesirable to switch pathgroups unnecessarily on
       such frequent, unreliable events. multipathd supports  three  different
       methods  for  detecting this situation and dealing with it. All methods
       share the same basic mode of operation:  If  a  path  is  found  to  be
       "shaky"  or  "flipping", and appears to be in healthy status, it is not
       reinstated (put back to use) immediately. Instead, it is placed in  the
       "delayed"  state  and watched for some time, and only reinstated if the
       healthy state appears to be stable.  If the marginal_pathgroups  option
       is  set,  the path will reinstated immediately, but placed in a special
       pathgroup for marginal paths. Marginal pathgroups will not be used  un-
       til  all  other  pathgroups  have been tried. At the time when the path
       would normally be reinstated, it will be returned to its  normal  path-
       group. The logic of determining "shaky" condition, as well as the logic
       when to reinstate, differs between the three methods.

       "delay_checks" failure tracking
               (Deprecated) This  method  is  deprecated  and  mapped  to  the
               "san_path_err"  method.   See  the  delay_watch_checks  and de-
               lay_wait_checks options above for more information.

       "marginal_path" failure tracking
               If a second failure event (good->bad transition) occurs  within
               marginal_path_double_failed_time seconds after a failure, high-
               frequency monitoring is started for the affected path:  I/O  is
               sent  at  a  rate  of  10  per  second.  This  is done for mar-
               ginal_path_err_sample_time seconds.  During  this  period,  the
               path  is  not  reinstated.  If the rate of errors remains below
               marginal_path_err_rate_threshold during the monitoring  period,
               the  path  is reinstated. Otherwise, it is kept in failed state
               for marginal_path_err_recheck_gap_time, and after that,  it  is
               monitored  again.  For this method, time intervals are measured
               in seconds.

       "san_path_err" failure tracking
               multipathd counts path failures for each path. Once the  number
               of  failures exceeds the value given by san_path_err_threshold,
               the path is not reinstated for san_path_err_recovery_time  sec-
               onds.  While  counting  failures, multipathd "forgets" one past
               failure every "san_path_err_forget_rate" ticks; thus if  errors
               don't  occur  more often then once in the forget rate interval,
               the failure count doesn't increase and the threshold  is  never
               reached.  Ticks are the time between path checks by multipathd,
               which is variable and controlled by  the  polling_interval  and
               max_polling_interval parameters.

               This  algorithm  is  superseded  by the "marginal_path" failure
               tracking, but remains supported for backward compatibility.

       "FPIN" failure tracking
               Fibre channel fabrics can notify hosts about  fabric-level  is-
               sues  such  as  integrity failures or congestion with so-called
               Fabric Performance Impact  Notifications  (FPINs).On  receiving
               the fpin notifications through ELS multipathd will move the af-
               fected path and port states to marginal.

       See the documentation of the individual options above for details.   It
       is  strongly  discouraged to use more than one of these methods for any
       given multipath map, because the two concurrent methods may interact in
       unpredictable  ways.  If  the  "marginal_path"  method  is  active, the
       "san_path_err" parameters are implicitly set to 0.

FOREIGN MULTIPATH SUPPORT
       multipath and multipathd can load "foreign" libraries  to  add  support
       for  other  multipathing  technologies besides the Linux device mapper.
       Currently this support is  limited  to  printing  detected  information
       about  multipath  setup.  In topology output, the names of foreign maps
       are prefixed by the foreign library name in square brackets, as in this
       example:

       # multipath -ll
       uuid.fedcba98-3579-4567-8765-123456789abc [nvme]:nvme4n9 NVMe,Some NVMe controller,FFFFFFFF
       size=167772160 features='n/a' hwhandler='ANA' wp=rw
       |-+- policy='n/a' prio=50 status=optimized
       | `- 4:38:1    nvme4c38n1 0:0     n/a   optimized    live
       `-+- policy='n/a' prio=50 status=optimized
         `- 4:39:1    nvme4c39n1 0:0     n/a   optimized    live

       The  "nvme"  foreign  library  provides  support for NVMe native multi-
       pathing in the kernel. It is part of the standard multipath package.

KNOWN ISSUES
       The usage of queue_if_no_path option can lead to D state processes  be-
       ing  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 set-
       ting accordingly to avoid this deadlock. Hence if both values are spec-
       ified the  order  of  precedence  is  no_path_retry,  queue_if_no_path,
       dev_loss_tmo.

SEE ALSO
       udev(8), dmsetup(8), multipath(8), multipathc(8), multipathd(8).

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

Linux                             2023-06-15                 MULTIPATH.CONF(5)

Want to link to this manual page? Use this URL:
<
http://star2.abcm.com/cgi-bin/bsdi-man?query=multipath.conf&sektion=5&manpath=>

home | help