On 15/06/2011, at 8:16 PM, Mark Kettenis wrote:

>> Date: Wed, 15 Jun 2011 18:04:24 +1000
>> From: David Gwynne <l...@animata.net>
>>
>> the subject line says it all, but happy to explain further if
>> required.
>
> Hmm, I'm somewhat confused:
>
>> +#define MPATH_ROUNDROBIN    0
>> +#define MPATH_NEXT          MPATH_ROUNDROBIN
>> +#define MPATH_LRU           1

ah crap, i mean MRU for most recently used. i dont know why LRU keeps coming
out of my fingers.

> What does MPATH_NEXT mean?  Is that the strategy you fall back on if
> the path you're using fails?  What if you have more than 4 paths to a
> disk with a device that only allows a single active path and one of
> them fails?  Are you suddenly going to try roundrobin scheduling of
> IOs?

if you have a group of four paths and you're doing MRU scheduling, only one of
those will be used. if that path goes away (ie, you get XS_SELTIMEOUT from the
physical adapter), MPATH_NEXT moves us to the next available path in the
group.

> Also, I don't quite understand what MPATH_LRU would mean.  Least
> Recently Used?  How is that different from Round Robin?  Don't you
> need a Last Used policy for devices that can only have a single active
> path or devices where there is a significant overhead for switching to
> a different path.

round robin uses all available paths, L^HMRU uses only one of the available
paths until it fails or goes away.

dlg

Reply via email to