[dm-devel] RFC: multipath IO multiplex

Hannes Reinecke hare at suse.de
Mon Nov 8 12:42:10 UTC 2010


On 11/08/2010 01:19 PM, Lars Marowsky-Bree wrote:
> On 2010-11-08T12:12:08, Alasdair G Kergon <agk at redhat.com> wrote:
> 
>>> I think handling this at the dm-multipath level is cleaner; similarly
>>> how we handle network bonding (which incidentally has a broadcast mode
>>> too), instead of requiring every application to go out and open N
>>> independent channels.
>> Or could it hook into the userspace multipath monitoring code which
>> already knows the state of the paths?
> 
> ... but not the translation (e.g., partitioning and logical volumes).
> But yes, getting notified by multipathd might also work. Though the code
> complexity in user-space arguably seems higher than handling it
> in-kernel.
> 
>> Well, I'm struggling to see anything clean, simple or generic about
>> a kernel-side solution here so far.  Seems like a lot of extra kernel
>> code for just one highly-specialised case: so far I'm unconvinced.
> 
> I wonder how other latency-sensitive IO handles multipath? Maybe they
> just haven't noticed yet they'd like a facility like this? ;-)
> 
> Also, Joel wanted to implement the heartbeating/poison pill mechanism
> itself in kernel space; clearly, that'd require such an in-kernel
> facility too, and could be shared between his code and mine.
> 
A really daft idea:
Can't you implement a separate path checker for this?
Basically a wrapper around the existing ones (or even a hook into
the existing infrastructure) which would write the poison pill if
requested? The path checker will be called for every path, so you
only have to worry about the checker interval. But I daresay you can
shorten it on request.
Then you can implement a CLI callout and set the magic poison pill
flag, which would trigger an immediate path re-check and the path
checker to write the poison pill itself.

Hmm?

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		      zSeries & Storage
hare at suse.de			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Markus Rex, HRB 16746 (AG Nürnberg)




More information about the dm-devel mailing list