[dm-devel] dm-multipath: Accept failed paths for multipath maps
snitzer at redhat.com
Fri Jul 18 16:15:50 UTC 2014
On Fri, Jul 18 2014 at 12:04pm -0400,
Mike Snitzer <snitzer at redhat.com> wrote:
> On Fri, Jul 18 2014 at 2:00am -0400,
> Hannes Reinecke <hare at suse.de> wrote:
> > Will be sending some update once the testing is done.
> OK. The stronger case that can be made for the stability of this change
> (no missing checks for dev->bdev, etc) the better.
> I did just do some basic testing, of both dm-mpath and dm-thinp, seems
> fine. The DM core changes really are simple (just some extra negative
> checks that won't ever apply for the normal case -- where "normal case"
> is DM targets that use dm_get_device rather than __dm_get_device, and
> had to add a dev_t to struct dm_dev).
BTW, I noticed one thing that I didn't think of as logical fallout, but
it makes sense: if configure multipthd to not use find_multipaths then
multipathd will successfully push down an mpath table that covers the
system disk (sda) -- but mpatha isn't able to dm_get_device:
# lsblk /dev/sda /dev/mapper/mpatha
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 930.5G 0 disk
├─sda1 8:1 0 500M 0 part /boot
└─sda2 8:2 0 930G 0 part
├─rhel_rhel--storage--02-swap 253:0 0 4G 0 lvm [SWAP]
└─rhel_rhel--storage--02-root 253:1 0 350G 0 lvm /
mpatha 253:6 0 930.5G 0 mpath
# multipath -ll mpatha
mpatha (36003005700ec189015d42b92237a76d1) dm-6 LSI ,RAID 5/6 SAS 6G
size=930G features='0' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=1 status=enabled
`- 0:2:0:0 sda 8:0 failed ready running
And multipathd keeps failing to reinstate_path:
[ 1906.647322] device-mapper: multipath: message: error getting device 8:0
[ 1912.652652] device-mapper: multipath: message: error getting device 8:0
[ 1918.657949] device-mapper: multipath: message: error getting device 8:0
[ 1924.664118] device-mapper: multipath: message: error getting device 8:0
[ 1930.669635] device-mapper: multipath: message: error getting device 8:0
Again, this all makes sense... but certainly shows that blacklisting the
relevant devices is a must.
More information about the dm-devel