[dm-devel] [RFC] pathchecker

christophe varoqui christophe.varoqui at free.fr
Tue Feb 24 14:53:00 UTC 2004


Kevin Corry wrote:
>>if test IO succeeds, exec the multipath config tool for this path, which
>>will reset all paths for the multipath to their active state.
> 
> Will this reactivate *all* paths, or just the path that's known to have 
> recovered?
>
*all* :)
like the initial config does ...
yes, it is suboptimal, but how disturbing ? I don't even know how to 
activate individual paths. Maybe with path options in tha path list of 
the PG definition ?

> 
>>Investigating this, I come across an interesting problem : how, in our
>>modern Linux world, do we resolve major,minor (as given by
>>DM_DEVICE_STATUS) to node name (as needed for submiting test IO) ?
> 
> 
> #include <sys/types.h>
> dev_t devt = makedev(major, minor);
> mknod("/some/path/name", S_IFBLK | S_IRUSR | S_IWUSR, devt);
> 
> Then use "/some/path/name" for testing the path.
> 
That's smart, thanks

> 
>>On another note I report some strange behaviours with 2.6.3-udm3 :
>>* dmsetup wait blocks until the first event (right), but relunching the
>>same cmd returns immediatly. This would put thread 1 in tight loop after
>>the first event.
> 
> 
> You need to specify an event number when waiting on the device. Each time an 
> event occurs, you need to increment your event number. Also, keep in mind 
> that multiple events could occur before you're able to begin the next wait 
> command. If so, you'll see the above behavior, where DM will simply return an 
> error until you wait on a valid event number.
>
Thanks

> 
>>* the multipath config tool and dmsetup in config modes 
>>block when exec'ed on a multipath with not active path. This would annoy
>>thread 2.
> 
> 
> What command are you issuing to dmsetup that blocks?
> 
suspend for example

regards,
cvaroqui




More information about the dm-devel mailing list