udev breaks compatibility with multipath
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| multipath-tools (Ubuntu) |
Medium
|
Soren Hansen | ||
| Intrepid |
Undecided
|
Mathias Gug | ||
| udev (Debian) |
Fix Released
|
Unknown
|
||
| udev (Ubuntu) |
Undecided
|
Unassigned | ||
| Intrepid |
Undecided
|
Unassigned |
Bug Description
options for /lib/udev/scsi_id have changed without backwards compatibility.
# multipath
/lib/udev/scsi_id: invalid option -- 's'
error calling out /lib/udev/scsi_id -g -u -s /block/sda
/lib/udev/scsi_id: invalid option -- 's'
error calling out /lib/udev/scsi_id -g -u -s /block/sdb
/lib/udev/scsi_id: invalid option -- 's'
error calling out /lib/udev/scsi_id -g -u -s /block/sdc
/lib/udev/scsi_id: invalid option -- 's'
error calling out /lib/udev/scsi_id -g -u -s /block/sdd
/lib/udev/scsi_id: invalid option -- 's'
error calling out /lib/udev/scsi_id -g -u -s /block/sde
multipath-
udev=124-9
# uname -a
Linux file01 2.6.27-10-generic #1 SMP Fri Nov 21 12:00:22 UTC 2008 i686 GNU/Linux
# lsb_release -a
LSB Version: core-2.
Distributor ID: Ubuntu
Description: Ubuntu 8.10
Release: 8.10
Codename: intrepid
==========
Intrepid SRU
Impact of the bug:
multipath uses /lib/udev/scsi_id to obtain a unique path identifier. However the options of scsi_id have changed. Thus multipath doesn't work as expected.
How the bug has been addressed:
The options used to call scsi_id have been updated.
TEST CASE:
Potential regression:
This patch fixes the default call which wasn't working before. Users that implemented the workaround in their configuration file shouldn't see any changes.
Changed in udev: | |
status: | New → Won't Fix |
Bryan McLellan (btm) wrote : | #2 |
I think it needs to be fixed somewhere to get multipath working. Debian patched it in udev. It seemed it would be easiest to pull from the upstream debian packaging but I didn't compare the existing patches in the packaging. I assume since there's no ubuntu version in the version number there aren't ubuntu specific patches.
Multipath upstream appears to have patched in their repository for the new arguments [1] but perusing the last few months of the the dm-setup mailing list archive doesn't indicate an expected release any time soon.
Scott James Remnant (Canonical) (canonical-scott) wrote : Re: [Bug 306723] Re: udev breaks compatibility with multipath | #3 |
On Wed, 2008-12-10 at 07:10 +0000, Bryan McLellan wrote:
> I think it needs to be fixed somewhere to get multipath working. Debian
> patched it in udev. It seemed it would be easiest to pull from the
> upstream debian packaging but I didn't compare the existing patches in
> the packaging. I assume since there's no ubuntu version in the version
> number there aren't ubuntu specific patches.
>
We don't derive our packaging from Debian; our udev packages are based
on upstream. If the patch is accepted there, that's ok - but otherwise
you need to update multipath-tools (which should probably use libudev
instead of scsi_id directly)
Scott
--
Scott James Remnant
<email address hidden>
Bryan McLellan (btm) wrote : | #4 |
I can't get a hold of anyone on #ubuntu-devel who'll take responsibility for multipath-tools and the ubuntu-devel list is all moderated to an elite club of developers or something, so I've patched multipath-tools myself to work.
With multipath-
# multipath -ll
sdb: checker msg is "directio checker reports path is down"
sdd: checker msg is "directio checker reports path is down"
36001e4f0003968
[size=278G]
\_ round-robin 0 [prio=0][enabled]
\_ #:#:#:# sdb 8:16 [active][faulty]
\_ round-robin 0 [prio=1][active]
\_ #:#:#:# sdc 8:32 [active][ready]
\_ round-robin 0 [prio=0][enabled]
\_ #:#:#:# sdd 8:48 [active][faulty]
\_ round-robin 0 [prio=1][enabled]
\_ #:#:#:# sde 8:64 [active][ready]
There was also the issue of s/block/dev/. I'll leave that to the package maintainers to make a long term decision on.
Bryan McLellan (btm) wrote : | #5 |
Attaching quilt patch from my PPA build that fixes.
Changed in multipath-tools: | |
assignee: | nobody → soren |
importance: | Undecided → Medium |
status: | New → Confirmed |
Launchpad Janitor (janitor) wrote : | #6 |
This bug was fixed in the package multipath-tools - 0.4.8-10ubuntu3
---------------
multipath-tools (0.4.8-10ubuntu3) jaunty; urgency=low
* fix_udev_
Update the arguments for scsi_id. (LP: #306723)
* fix_sysfs_
Patch from upstream to use the new sysfs layout. (LP: #307032)
-- Timo Aaltonen <email address hidden> Thu, 18 Dec 2008 15:32:20 +0200
Changed in multipath-tools: | |
status: | Confirmed → Fix Released |
For people using Intrepid, you can work around that bug by setting getuid_callout somewhere in /etc/multipath.
defaults {
}
Ideally, getuid_callout would be defined in a device stanza instead of defaults, but the above would work in a pinch if your machine is connected to a single SAN.
Is there any plan to do a SRU for Intrepid? I think it would worth it, as otherwise multipath-tools is DOA. I can help with testing.
description: | updated |
Mathias Gug (mathiaz) wrote : | #8 |
Proposed debdiff for intrepid SRU.
Changed in udev: | |
status: | New → Invalid |
Changed in multipath-tools: | |
assignee: | nobody → mathiaz |
status: | New → In Progress |
Martin Pitt (pitti) wrote : | #9 |
Accepted multipath-tools into intrepid-proposed, please test and give feedback here. Please see https:/
Changed in multipath-tools: | |
status: | In Progress → Fix Committed |
Bryan McLellan (btm) wrote : | #10 |
Tested multipath-
tags: |
added: verification-done removed: verification-needed |
Launchpad Janitor (janitor) wrote : | #11 |
This bug was fixed in the package multipath-tools - 0.4.8-10ubuntu1.1
---------------
multipath-tools (0.4.8-10ubuntu1.1) intrepid-proposed; urgency=low
* fix_udev_
Update the arguments for scsi_id. (LP: #306723)
* fix_sysfs_
Patch from upstream to use the new sysfs layout. (LP: #307032)
-- Mathias Gug <email address hidden> Thu, 22 Jan 2009 11:35:09 -0500
Changed in multipath-tools (Ubuntu Intrepid): | |
status: | Fix Committed → Fix Released |
Changed in udev (Debian): | |
status: | Unknown → Fix Released |
Binaries in /lib/udev do not have a stable API intended for other processes.