Hello,
I'm upgrading some environments from 4.3 to 4.4.
Storage domains are iSCSI based, connected to an Equallogic storage array (PS-6510ES), that is recognized such as this as vendor/product in relation to multipath configuration

# cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 02 Id: 00 Lun: 00
  Vendor: DELL     Model: PERC H730 Mini   Rev: 4.30
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi15 Channel: 00 Id: 00 Lun: 00
  Vendor: EQLOGIC  Model: 100E-00          Rev: 8.1
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi16 Channel: 00 Id: 00 Lun: 00
  Vendor: EQLOGIC  Model: 100E-00          Rev: 8.1
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi17 Channel: 00 Id: 00 Lun: 00
  Vendor: EQLOGIC  Model: 100E-00          Rev: 8.1
  Type:   Direct-Access                    ANSI  SCSI revision: 05
Host: scsi18 Channel: 00 Id: 00 Lun: 00
  Vendor: EQLOGIC  Model: 100E-00          Rev: 8.1
  Type:   Direct-Access                    ANSI  SCSI revision: 05
#

Passing from 4.3 to 4.4 implies passing from CentOS 7 to 8.
The vendor is not in multipath "database" (it wasn't in 6 and 7 too)
In 7 I used this snip to get no_path_retry set:

# VDSM REVISION 1.5
# VDSM PRIVATE
defaults {
. . .
    no_path_retry               4
. . .
}
. . .
devices {
    device {
        # These settings overrides built-in devices settings. It does
        # not apply to devices without built-in settings (these use the
        # settings in the "defaults" section), or to devices defined in
        # the "devices" section.
        all_devs                yes
        no_path_retry           4
    }
    device {
        vendor                  "EQLOGIC"
        product                 "100E-00"
        path_selector           "round-robin 0"
        path_grouping_policy    multibus
        path_checker            tur
        rr_min_io_rq            10
        rr_weight               priorities
        failback                immediate
        features                "0"
    }
}

and confirmation of applied config with

# multipath -l
36090a0c8d04f21111fc4251c7c08d0a3 dm-14 EQLOGIC ,100E-00        
size=2.4T features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=0 status=active
  |- 16:0:0:0 sdc 8:32 active undef running
  `- 18:0:0:0 sde 8:64 active undef running
36090a0d88034667163b315f8c906b0ac dm-13 EQLOGIC ,100E-00        
size=2.0T features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=0 status=active
  |- 15:0:0:0 sdb 8:16 active undef running
  `- 17:0:0:0 sdd 8:48 active undef running

and

# multipath -r -v3 | grep no_path_retry
Jan 29 11:51:17 | 36090a0d88034667163b315f8c906b0ac: no_path_retry = 4 (config file default)
Jan 29 11:51:17 | 36090a0c8d04f21111fc4251c7c08d0a3: no_path_retry = 4 (config file default)


In 8 I get this; see also the strange line about vendor or product missing, but it is not true...

# multipath -l
Jan 29 11:52:02 | device config in /etc/multipath.conf missing vendor or product parameter
36090a0c8d04f21111fc4251c7c08d0a3 dm-13 EQLOGIC,100E-00
size=2.4T features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
`-+- policy='round-robin 0' prio=0 status=active
  |- 16:0:0:0 sdc 8:32 active undef running
  `- 18:0:0:0 sde 8:64 active undef running
36090a0d88034667163b315f8c906b0ac dm-12 EQLOGIC,100E-00
size=2.0T features='1 queue_if_no_path' hwhandler='1 alua' wp=rw
`-+- policy='round-robin 0' prio=0 status=active
  |- 15:0:0:0 sdb 8:16 active undef running
  `- 17:0:0:0 sdd 8:48 active undef running

# multipath -r -v3 | grep no_path_retry
Jan 29 11:53:54 | device config in /etc/multipath.conf missing vendor or product parameter
Jan 29 11:53:54 | set open fds limit to 8192/262144
Jan 29 11:53:54 | loading /lib64/multipath/libchecktur.so checker
Jan 29 11:53:54 | checker tur: message table size = 3
Jan 29 11:53:54 | loading /lib64/multipath/libprioconst.so prioritizer
Jan 29 11:53:54 | foreign library "nvme" loaded successfully
Jan 29 11:53:54 | delegating command to multipathd

So in my opinion it is currently using queue if no path in 8

Can anyone give me any insight about the message and about how to force the no_path_retry?

Perhaps any major change in multipath from 7 to 8?

The 8 config is this one:


# VDSM REVISION 2.0
# VDSM PRIVATE

defaults {
. . .
    polling_interval            5

  . . .
    # We use a small number of retries to protect from short outage.
    # Assuming the default polling_interval (5 seconds), this gives
    # extra 20 seconds grace time before failing the I/O.

    no_path_retry               16

    . . .
}

# Blacklist internal disk
blacklist {
    wwid "36d09466029914f0021e89c5710e256be"
}

# Remove devices entries when overrides section is available.
devices {
    device {
        # These settings overrides built-in devices settings. It does
        # not apply to devices without built-in settings (these use the
        # settings in the "defaults" section), or to devices defined in
        # the "devices" section.
#### Not valid any more in RH EL 8.3
####        all_devs                yes
####        no_path_retry           16
    }
    device {
        vendor                  "EQLOGIC"
        product                 "100E-00"
        path_selector           "round-robin 0"
        path_grouping_policy    multibus
        path_checker            tur
        rr_min_io_rq            10
        rr_weight               priorities
        failback                immediate
        features                "0"
    }
}

Thanks in advance,

Gianluca