| Summary: | dynamic linking error occurred when executing "multipath -r" after offline one disk | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux 6 | Reporter: | Zhang Yi <yizhan> |
| Component: | device-mapper-multipath | Assignee: | Ben Marzinski <bmarzins> |
| Status: | CLOSED ERRATA | QA Contact: | Lin Li <lilin> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 6.9 | CC: | agk, bmarzins, heinzm, msnitzer, prajnoha, rbalakri, zkabelac |
| Target Milestone: | rc | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | device-mapper-multipath-0.4.9-98.el6 | Doc Type: | Bug Fix |
| Doc Text: |
Cause: If multipath never set up a prioritizer for a device, when it exitting, it would try to drop a reference to the non-existent prioritizer.
Consequence: Multipath would print a warning message that it couldn't find the prioritizer
Fix: Multipath now checks that the prioritizer has been set up before trying to drop the reference to it.
Result: Multipath no longer prints a warning message on exit, when it doesn't set up a prioritizer for a device.
|
Story Points: | --- |
| Clone Of: | Environment: | ||
| Last Closed: | 2017-03-21 10:53:12 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
|
Comment 5
Ben Marzinski
2016-12-05 19:35:08 UTC
Multipath was trying to drop a reference on a prioritizer that had never been set up. It now checks first, and doesn't try to drop the reference if there is no prioritizer set up. Reproduced on device-mapper-multipath-0.4.9-97.el6
steps:
1.# rpm -qa | grep multipath
device-mapper-multipath-0.4.9-97.el6.x86_64
device-mapper-multipath-libs-0.4.9-97.el6.x86_64
2.uname -r
2.6.32-676.el6.x86_64
3.# modprobe scsi_debug vpd_use_hostno=0 add_host=2 dev_size_mb=1024
4.# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 68.3G 0 disk
├─sda1 8:1 0 500M 0 part
└─sda2 8:2 0 67.9G 0 part
├─rhel_storageqe--02-swap (dm-5) 253:5 0 6.9G 0 lvm
├─rhel_storageqe--02-home (dm-6) 253:6 0 20G 0 lvm
└─rhel_storageqe--02-root (dm-7) 253:7 0 41G 0 lvm
sdb 8:16 0 50G 0 disk
└─mpathb (dm-0) 253:0 0 50G 0 mpath
├─mpathbp1 (dm-1) 253:1 0 500M 0 part /boot
└─mpathbp2 (dm-2) 253:2 0 49.5G 0 part
├─vg_storageqe02-lv_root (dm-3) 253:3 0 41.7G 0 lvm /
└─vg_storageqe02-lv_swap (dm-4) 253:4 0 7.8G 0 lvm [SWAP]
sdc 8:32 0 10G 0 disk
sde 8:64 0 10G 0 disk
sdd 8:48 0 50G 0 disk
└─mpathb (dm-0) 253:0 0 50G 0 mpath
├─mpathbp1 (dm-1) 253:1 0 500M 0 part /boot
└─mpathbp2 (dm-2) 253:2 0 49.5G 0 part
├─vg_storageqe02-lv_root (dm-3) 253:3 0 41.7G 0 lvm /
└─vg_storageqe02-lv_swap (dm-4) 253:4 0 7.8G 0 lvm [SWAP]
sdf 8:80 0 1G 0 disk
sdg 8:96 0 1G 0 disk
5.# echo "offline" > /sys/block/sdd/device/state
6.# multipath -ll
mpathb (360a980003246694a412b456733426155) dm-0 NETAPP,LUN
size=50G features='4 queue_if_no_path pg_init_retries 50 retain_attached_hw_handle' hwhandler='0' wp=rw
`-+- policy='round-robin 0' prio=2 status=active
|- 0:0:0:0 sdb 8:16 active ready running
`- 1:0:0:0 sdd 8:48 failed faulty running
7.# multipath -r
reload: mpathb (360a980003246694a412b456733426155) undef NETAPP,LUN
size=50G features='3 queue_if_no_path pg_init_retries 50' hwhandler='0' wp=undef
`-+- policy='round-robin 0' prio=2 status=undef
`- 0:0:0:0 sdb 8:16 active ready running
Dec 13 04:16:50 | A dynamic linking error occurred: (/lib64/multipath/libprio.so: cannot open shared object file: No such file or directory)
Verified on device-mapper-multipath-0.4.9-99.el6
steps:
1.# rpm -qa | grep multipath
device-mapper-multipath-debuginfo-0.4.9-99.el6.x86_64
device-mapper-multipath-libs-0.4.9-99.el6.x86_64
device-mapper-multipath-0.4.9-99.el6.x86_64
2. # uname -r
2.6.32-676.el6.x86_64
3.# modprobe scsi_debug vpd_use_hostno=0 add_host=2 dev_size_mb=1024
4.# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
└─mpatha (dm-0) 253:0 0 50G 0 mpath
├─mpathap1 (dm-1) 253:1 0 500M 0 part /boot
└─mpathap2 (dm-2) 253:2 0 49.5G 0 part
├─vg_storageqe84-lv_root (dm-3) 253:3 0 41.7G 0 lvm /
└─vg_storageqe84-lv_swap (dm-4) 253:4 0 7.9G 0 lvm [SWAP]
sdb 8:16 0 50G 0 disk
└─mpatha (dm-0) 253:0 0 50G 0 mpath
├─mpathap1 (dm-1) 253:1 0 500M 0 part /boot
└─mpathap2 (dm-2) 253:2 0 49.5G 0 part
├─vg_storageqe84-lv_root (dm-3) 253:3 0 41.7G 0 lvm /
└─vg_storageqe84-lv_swap (dm-4) 253:4 0 7.9G 0 lvm [SWAP]
sr0 11:0 1 1024M 0 rom
sdc 8:32 0 1G 0 disk
sdd 8:48 0 1G 0 disk
5.# echo "offline" > /sys/block/sdb/device/state
6.# multipath -ll
mpatha (360fff19abdd9552f8a36e5355226ba27) dm-0 EQLOGIC,100E-00
size=50G features='0' hwhandler='0' wp=rw
|-+- policy='round-robin 0' prio=1 status=active
| `- 0:0:0:0 sda 8:0 active ready running
`-+- policy='round-robin 0' prio=0 status=enabled
`- 1:0:0:0 sdb 8:16 failed faulty running
7.# multipath -r
reload: mpatha (360fff19abdd9552f8a36e5355226ba27) undef EQLOGIC,100E-00
size=50G features='0' hwhandler='0' wp=undef
`-+- policy='round-robin 0' prio=1 status=undef
`- 0:0:0:0 sda 8:0 active ready running
----------> no longer print dynamic linking error message
Test result:
It has a fix for the dynamic linking error message
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, 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://rhn.redhat.com/errata/RHBA-2017-0697.html |