Note: This bug is displayed in read-only format because
the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Cause: Multipath doesn't verify that the argument count in the "features", "path_selector", and "hardware_handler" option strings it passes to the kernel. If users don't match the count to the actual number of arguments, the kernel will fail to parse the device table
Consequence: Multipath will be unable to create or reload devices with an incorrect argument count, and will not warn users what the problem is.
Fix: multipath now verifies the argument count of configuration strings, and warns users when the count doesn't match the number of arguments.
Result: Users now are notified why their devices aren't created or reloaded, when they have an invalid argument count in their configuration.
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory (Moderate: device-mapper-multipath security and bug fix update), and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.
https://access.redhat.com/errata/RHSA-2023:2948
Description of problem: the argument count in the "features" does not match the number of arguments that follow it Version-Release number of selected component (if applicable): device-mapper-multipath-0.8.4-34.el8 How reproducible: always Steps to Reproduce: 1.[root@storageqe-25 ~]# rpm -qa | grep multipath device-mapper-multipath-libs-0.8.4-34.el8.x86_64 device-mapper-multipath-0.8.4-34.el8.x86_64 2.Edit /etc/multipath.conf [root@storageqe-25 ~]# cat /etc/multipath.conf # device-mapper-multipath configuration file # For a complete list of the default configuration values, run either: # # multipath -t # or # # multipathd show config # For a list of configuration options with descriptions, see the # multipath.conf man page. defaults { user_friendly_names yes find_multipaths yes enable_foreign "^$" path_selector "historical-service-time 0" } blacklist_exceptions { property "(SCSI_IDENT_|ID_WWN)" } blacklist { } devices { device { vendor "NETAPP" product "LUN" path_grouping_policy multibus path_checker tur features "3 no_path_retry queue pg_init_retries 50" <------------ hardware_handler 0 prio ontap failback immediate rr_weight uniform rr_min_io 128 flush_on_last_del yes dev_loss_tmo infinity retain_attached_hw_handler yes detect_prio yes } } 3.[root@storageqe-25 ~]# service multipathd reload Redirecting to /bin/systemctl reload multipathd.service 4.[root@storageqe-25 ~]# multipath -ll 360a98000324669436c2b45666c567858 dm-3 NETAPP,LUN size=2.0G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw |-+- policy='historical-service-time 2' prio=50 status=enabled | |- 7:0:1:0 sdf 8:80 undef ready running | `- 8:0:1:0 sdn 8:208 undef ready running `-+- policy='historical-service-time 2' prio=10 status=undef |- 7:0:0:0 sdb 8:16 undef ready running `- 8:0:0:0 sdj 8:144 undef ready running 360a98000324669436c2b45666c56785a dm-4 NETAPP,LUN size=2.0G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw |-+- policy='historical-service-time 2' prio=50 status=enabled | |- 7:0:1:1 sdg 8:96 undef ready running | `- 8:0:1:1 sdo 8:224 undef ready running `-+- policy='historical-service-time 2' prio=10 status=undef |- 7:0:0:1 sdc 8:32 undef ready running `- 8:0:0:1 sdk 8:160 undef ready running 360a98000324669436c2b45666c567861 dm-5 NETAPP,LUN size=2.0G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw |-+- policy='historical-service-time 2' prio=50 status=enabled | |- 7:0:1:2 sdh 8:112 undef ready running | `- 8:0:1:2 sdp 8:240 undef ready running `-+- policy='historical-service-time 2' prio=10 status=undef |- 7:0:0:2 sdd 8:48 undef ready running `- 8:0:0:2 sdl 8:176 undef ready running 360a98000324669436c2b45666c567863 dm-6 NETAPP,LUN size=2.0G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw |-+- policy='historical-service-time 2' prio=50 status=enabled | |- 7:0:1:3 sdi 8:128 undef ready running | `- 8:0:1:3 sdq 65:0 undef ready running `-+- policy='historical-service-time 2' prio=10 status=undef |- 7:0:0:3 sde 8:64 undef ready running `- 8:0:0:3 sdm 8:192 undef ready running 5.[root@storageqe-25 ~]# multipathd show config | grep -C 15 NETAPP device { vendor "NETAPP" product "LUN" path_grouping_policy "multibus" path_checker "tur" features "3 no_path_retry queue pg_init_retries 50" hardware_handler "0" prio "ontap" failback "immediate" rr_weight "uniform" no_path_retry "queue" rr_min_io 128 flush_on_last_del "yes" dev_loss_tmo "infinity" user_friendly_names "no" retain_attached_hw_handler "yes" detect_prio "yes" } Actual results: the argument count in the "features" does not match the number of arguments that follow it Expected results: the argument count in the "features" matches the number of arguments that follow it Additional info: