[dm-devel] [PATCH] multipathd: Don't mark a virtio_blk path offline if it has no sysfs "state" attribute

Christophe Varoqui christophe.varoqui at gmail.com
Thu May 5 07:13:21 UTC 2011


On jeu., 2011-05-05 at 16:32 +1000, Martin Schwenke wrote:
> multipathd currently marks paths as down if they don't have a sysfs
> "state" attribute.
> 
> Unfortunately, this makes multipathd unusable with Linux virtio_blk
> devices, since they don't have this attribute.  I need to use multipath
> with virtio for consistency with a real configuration when testing a
> clustered NAS system - yeah, I'm that guy again...  :-)
> 
> One way of working around this might be to have path_offline() return
> PATH_UP for all devices that don't have a sysfs "state" attribute,
> instead of PATH_WILD.  However, I'm guessing the current behaviour might
> exist for a reason.
> 
> The following patch makes path_offline() always return PATH_UP instead
> of PATH_WILD for virtio_blk devices.  I've implemented the nested if
> statements as below to change the code flow as little as possible
> when sysfs_get_state() actually succeeds, which I assume is usually the
> case.   If nobody is feeling paranoid then the check for virtio_blk
> could obviously be done before the call to sysfs_get_state().
> 
> If people think this patch is too specific then at least it can be
> used to start a discussion...  ;-)
> 
I'd personnaly prefer the un-nested version, and keep apply this
passthrough only for drivers who don't present the state file. Is there
other such drivers by the way ?

Best regards,
-- 
Christophe Varoqui
OpenSVC - Tools to scale
http://www.opensvc.com/




More information about the dm-devel mailing list