multipath discovery failed during install due to LVM volumes locking individual paths

Bug #1549504 reported by Mauricio Faria de Oliveira
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
hw-detect (Ubuntu)
Fix Released
Medium
Mathieu Trudel-Lapierre
partman-multipath (Ubuntu)
Fix Released
Medium
Mathieu Trudel-Lapierre

Bug Description

During a Xenial installation, some of the multipath devices were not discovered, as individual paths were locked by active LVM volumes.

The fix is to deactivate LVM volumes before multipath discovery (in hw-detect), and activate multipath partitions during partman/init.d (in partman-multipath), so that LVM volumes can be re-activated on top of the multipath devices (slightly afterward on partman/init.d/26lvm-devices).

Failure:

~ # multipath -v5
<...>
Feb 22 14:46:02 | mpathb: addmap [0 1115734016 multipath 1 queue_if_no_path 1 alua 2 1 round-robin 0 1 1 8:16 1 round-robin 0 1 1 8:128 1]
Feb 22 14:46:02 | libdevmapper: ioctl/libdm-iface.c(1876): device-mapper: reload ioctl on mpathb failed: Device or resource busy
Feb 22 14:46:02 | mpathb: domap (0) failure for create/reload map
<...>
Feb 22 14:46:02 | mpathc: addmap [0 1115734016 multipath 1 queue_if_no_path 1 alua 2 1 round-robin 0 1 1 8:32 1 round-robin 0 1 1 8:144 1]
Feb 22 14:46:02 | libdevmapper: ioctl/libdm-iface.c(1876): device-mapper: reload ioctl on mpathc failed: Device or resource busy
Feb 22 14:46:02 | mpathc: domap (0) failure for create/reload map
<...>
Feb 22 14:46:02 | mpathd: addmap [0 1115734016 multipath 1 queue_if_no_path 1 alua 2 1 round-robin 0 1 1 8:48 1 round-robin 0 1 1 8:160 1]
Feb 22 14:46:02 | libdevmapper: ioctl/libdm-iface.c(1876): device-mapper: reload ioctl on mpathd failed: Device or resource busy
Feb 22 14:46:02 | mpathd: domap (0) failure for create/reload map
<...>
Feb 22 14:46:02 | mpathe: addmap [0 1115734016 multipath 1 queue_if_no_path 1 alua 2 1 round-robin 0 1 1 8:64 1 round-robin 0 1 1 8:176 1]
Feb 22 14:46:02 | libdevmapper: ioctl/libdm-iface.c(1876): device-mapper: reload ioctl on mpathe failed: Device or resource busy
Feb 22 14:46:02 | mpathe: domap (0) failure for create/reload map
<...>
Feb 22 14:46:02 | mpathf: addmap [0 1115734016 multipath 1 queue_if_no_path 1 alua 2 1 round-robin 0 1 1 8:80 1 round-robin 0 1 1 8:192 1]
Feb 22 14:46:02 | libdevmapper: ioctl/libdm-iface.c(1876): device-mapper: reload ioctl on mpathf failed: Device or resource busy
Feb 22 14:46:02 | mpathf: domap (0) failure for create/reload map

After fix:

Feb 23 20:34:20 disk-detect: create: mpatha (1IBM_IPR-10_5ED5AD0000000020) undef IBM,IPR-10 5ED5AD00
Feb 23 20:34:20 disk-detect: size=532G features='0' hwhandler='1 alua' wp=undef
Feb 23 20:34:20 disk-detect: |-+- policy='round-robin 0' prio=50 status=undef
Feb 23 20:34:20 disk-detect: | `- 0:2:0:0 sda 8:0 undef ready running
Feb 23 20:34:20 disk-detect: `-+- policy='round-robin 0' prio=10 status=undef
Feb 23 20:34:20 disk-detect: `- 1:2:0:0 sdh 8:112 undef ready running
Feb 23 20:34:20 disk-detect: create: mpathb (1IBM_IPR-0_5ED5930000000040) undef IBM,IPR-0 5ED59300
Feb 23 20:34:20 disk-detect: size=532G features='0' hwhandler='1 alua' wp=undef
Feb 23 20:34:20 disk-detect: |-+- policy='round-robin 0' prio=50 status=undef
Feb 23 20:34:20 disk-detect: | `- 0:2:1:0 sdb 8:16 undef ready running
Feb 23 20:34:20 disk-detect: `-+- policy='round-robin 0' prio=10 status=undef
Feb 23 20:34:20 disk-detect: `- 1:2:1:0 sdi 8:128 undef ready running
Feb 23 20:34:20 disk-detect: create: mpathc (1IBM_IPR-0_5ED5930000000020) undef IBM,IPR-0 5ED59300
Feb 23 20:34:20 disk-detect: size=532G features='0' hwhandler='1 alua' wp=undef
Feb 23 20:34:20 disk-detect: |-+- policy='round-robin 0' prio=50 status=undef
Feb 23 20:34:20 disk-detect: | `- 0:2:2:0 sdc 8:32 undef ready running
Feb 23 20:34:20 disk-detect: `-+- policy='round-robin 0' prio=10 status=undef
Feb 23 20:34:20 disk-detect: `- 1:2:2:0 sdj 8:144 undef ready running
Feb 23 20:34:20 disk-detect: create: mpathd (1IBM_IPR-0_5ED5930000000100) undef IBM,IPR-0 5ED59300
Feb 23 20:34:20 disk-detect: size=532G features='0' hwhandler='1 alua' wp=undef
Feb 23 20:34:20 disk-detect: |-+- policy='round-robin 0' prio=50 status=undef
Feb 23 20:34:20 disk-detect: | `- 0:2:3:0 sdd 8:48 undef ready running
Feb 23 20:34:20 disk-detect: `-+- policy='round-robin 0' prio=10 status=undef
Feb 23 20:34:20 disk-detect: `- 1:2:3:0 sdk 8:160 undef ready running
Feb 23 20:34:20 disk-detect: create: mpathe (1IBM_IPR-0_5ED59300000000E0) undef IBM,IPR-0 5ED59300
Feb 23 20:34:20 disk-detect: size=532G features='0' hwhandler='1 alua' wp=undef
Feb 23 20:34:20 disk-detect: |-+- policy='round-robin 0' prio=50 status=undef
Feb 23 20:34:20 disk-detect: | `- 0:2:4:0 sde 8:64 undef ready running
Feb 23 20:34:20 disk-detect: `-+- policy='round-robin 0' prio=10 status=undef
Feb 23 20:34:20 disk-detect: `- 1:2:4:0 sdl 8:176 undef ready running
Feb 23 20:34:20 disk-detect: create: mpathf (1IBM_IPR-0_5ED59300000000C0) undef IBM,IPR-0 5ED59300
Feb 23 20:34:20 disk-detect: size=532G features='0' hwhandler='1 alua' wp=undef
Feb 23 20:34:20 disk-detect: |-+- policy='round-robin 0' prio=50 status=undef
Feb 23 20:34:20 disk-detect: | `- 0:2:5:0 sdf 8:80 undef ready running
Feb 23 20:34:20 disk-detect: `-+- policy='round-robin 0' prio=10 status=undef
Feb 23 20:34:20 disk-detect: `- 1:2:5:0 sdm 8:192 undef ready running
Feb 23 20:34:20 disk-detect: create: mpathg (1IBM_IPR-0_5ED59300000000A0) undef IBM,IPR-0 5ED59300
Feb 23 20:34:20 disk-detect: size=532G features='0' hwhandler='1 alua' wp=undef
Feb 23 20:34:20 disk-detect: |-+- policy='round-robin 0' prio=50 status=undef
Feb 23 20:34:20 disk-detect: | `- 0:2:6:0 sdg 8:96 undef ready running
Feb 23 20:34:20 disk-detect: `-+- policy='round-robin 0' prio=10 status=undef
Feb 23 20:34:20 disk-detect: `- 1:2:6:0 sdn 8:208 undef ready running
Feb 23 20:34:20 disk-detect: Multipath devices found; enabling multipath support

Revision history for this message
Mauricio Faria de Oliveira (mfo) wrote :
Revision history for this message
Mauricio Faria de Oliveira (mfo) wrote :
Revision history for this message
Mauricio Faria de Oliveira (mfo) wrote :

Hi @mathieu-tl,
Can you check this bug/patches, please?
Thanks!

Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "hw-detect_2_mpathlvm.debdiff" seems to be a debdiff. The ubuntu-sponsors team has been subscribed to the bug report so that they can review and hopefully sponsor the debdiff. If the attachment isn't a patch, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are member of the ~ubuntu-sponsors, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issue please contact him.]

tags: added: patch
Mathew Hodson (mhodson)
Changed in hw-detect (Ubuntu):
importance: Undecided → Medium
Changed in hw-detect (Ubuntu):
status: New → Triaged
assignee: nobody → Mathieu Trudel-Lapierre (mathieu-tl)
Revision history for this message
bugproxy (bugproxy) wrote : Comment bridged from LTC Bugzilla

------- Comment From <email address hidden> 2016-03-14 16:19 EDT-------
.

tags: added: architecture-ppc64le bugnameltc-138922 severity-medium targetmilestone-inin1604
Revision history for this message
bugproxy (bugproxy) wrote :

------- Comment From <email address hidden> 2016-03-21 09:49 EDT-------
Hi @mathieu-tl,

Can you confirm the milestone for this is 16.04?

This one is important for the installer media.

Thank you!

tags: added: severity-critical
removed: severity-medium
Revision history for this message
Mathieu Trudel-Lapierre (cyphermox) wrote :

Yes, the milestone for this is 16.04; I'm finishing some smoketesting on these this week prior to uploading the whole thing.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package hw-detect - 1.114ubuntu4

---------------
hw-detect (1.114ubuntu4) xenial; urgency=medium

  [ Mauricio Faria de Oliveira ]
  * disk-detect.sh: multipath: reload udev rules before re-add devices
    to guarantee all devices may get new udev properties (LP: #1549456)
  * disk-detect.sh: multipath: deactivate LVM volumes before multipath
    discovery to unlock individual paths (LP: #1549504)
  * disk-detect.sh: multipath: deactivate md arrays before multipath
    discovery to unlock individual paths (LP: #1549506)

 -- Mathieu Trudel-Lapierre <email address hidden> Mon, 21 Mar 2016 14:24:03 -0400

Changed in hw-detect (Ubuntu):
status: Triaged → Fix Released
Revision history for this message
Mauricio Faria de Oliveira (mfo) wrote :

@mathieu-tl,

Do you plan to upload the remaining patch for partman-multipath as well?

Thanks

Revision history for this message
bugproxy (bugproxy) wrote :

------- Comment From <email address hidden> 2016-03-21 20:39 EDT-------
Thanks, @mathieu-tl.

Revision history for this message
bugproxy (bugproxy) wrote : hw-detect_2_mpathlvm.debdiff

Default Comment by Bridge

Revision history for this message
bugproxy (bugproxy) wrote : partman-multipath_2_mpathlvm.debdiff

Default Comment by Bridge

Changed in partman-multipath (Ubuntu):
assignee: nobody → Mathieu Trudel-Lapierre (cyphermox)
status: New → Triaged
importance: Undecided → Medium
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package partman-multipath - 4ubuntu5

---------------
partman-multipath (4ubuntu5) xenial; urgency=medium

  * init.d/multipath_partitions: activate multipath partitions before
    LVM volumes (LP: #1549504)

 -- Mauricio Faria de Oliveira <email address hidden> Wed, 30 Mar 2016 14:56:22 -0400

Changed in partman-multipath (Ubuntu):
status: Triaged → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.