[dm-devel] [patch] mpath_prio_pp

T S, Veena (STSD) veena-s.t at hp.com
Thu Jan 17 10:44:49 UTC 2008


 

> -----Original Message-----
> From: Kiyoshi Ueda [mailto:k-ueda at ct.jp.nec.com] 
> Sent: Friday, January 11, 2008 4:18 AM
> To: T S, Veena (STSD)
> Cc: dm-devel at redhat.com
> Subject: Re: [dm-devel] [patch] mpath_prio_pp
> 
> Hi Veena,
> 
> On Wed, 9 Jan 2008 15:15:38 +0530, "T S, Veena (STSD)" wrote:
> > Purpose of the patch-
> > -- To introduce the prio_callout attribute into the 
> multipath section 
> > of the configuration file.
> 
> The prio_callout feature has been changed to the libprio.
> Please check the latest Christophe's git.
> 

The changes made, to have the prio_callout attribute in the multipath
section   
can be ported to the latest Christophe's git.

> 
> > -- To implement the preferred path feature in device mapper.
> > 
> > Uses of the patch-
> > -- Prio_callout attribute in the multipath section allows users to 
> > write callout routines,which can be specific to a LUN.
> > -- When it is known the performance of one of the path is 
> better than 
> > the other available paths for a particular LUN, the user 
> can set it as 
> > preferred path.
> 
> How about opposite case such as the performance of some paths 
> are better than the one backup path for a particular LUN?
> So if we can specify some preferred paths, that may be more useful.
> 

The preferred path approach implemented here is only an example to show
how    
the selection of path(s) can be made for a particular LUN. Changes to
have 
more than one preferred path can be made accordingly,if necessary.

> 
> > +int main(int argc, char * argv[])
> > +{
> > + 
> > +       char path[FILE_NAME_SIZE];
> > +       
> > +       if(argv[1] && argv[2]) 
> > +       { 
> > +               if(!strncmp(argv[2],"/dev/",5)) 
> > +                       strcpy(path,argv[2]+5);
> > + 
> > +               if(!strcmp(path,argv[1]) || 
> !strcmp(argv[1],argv[2])) 
> > +               { 
> > +                       printf("%u\n", HIGH); 
> > +                       return 0; 
> > +               } 
> > +               else 
> > +               { 
> > +                       printf("%u\n", LOW); 
> > +                       return 0; 
> > +               } 
> > +       } 
> > +       return -1;
> > +}
> 
> This prioritizer looks that we need to specify the preferred 
> path by devnode or major/minor, right?
> If so, it doesn't work reliably.
> Both devnode and major/minor may vary for each system reboot.
> It's horrible to check and change the config file after every reboot.
> We should be able to use more persistent name to specify a 
> path, though I don't have a good idea now...
> 
> Thanks,
> Kiyoshi Ueda
> 

Thanks,
Veena




More information about the dm-devel mailing list