[dm-devel] multipath-tools libmultipath/configure.c libmu ...
Benjamin Marzinski
bmarzins at redhat.com
Tue Sep 23 18:05:04 UTC 2008
On Fri, Sep 19, 2008 at 04:57:32PM -0500, Andy wrote:
> On Fri, Sep 19, 2008 at 01:53:13PM -0500, Andy wrote:
> > On Fri, Sep 19, 2008 at 03:27:10AM -0000, bmarzins at sourceware.org wrote:
> > > CVSROOT: /cvs/dm
> > > Module name: multipath-tools
> > > Branch: RHEL5_FC6
> > > Changes by: bmarzins at sourceware.org 2008-09-19 03:27:08
> > >
> > > Modified files:
> > > libmultipath : configure.c configure.h devmapper.c devmapper.h
> > > multipathd : cli.c cli.h cli_handlers.c cli_handlers.h
> > > main.c main.h
> > >
> > > Log message:
> > > Fix for bz #455692. There is now a command for multipathd, 'resize map'. This
> > > does online grows or shrinks for your multipath device. It has some warts.
> > >
> > > 1. It needs to remove and re-add every path in the device. This can cause two
> > > annoyances. First, if you only have one valid path, you go into an all paths
> > > down scenario. However, you will immediately re-add the path, so it won't
> > > trigger problem #2. Second, if the path is inaccessable, you may not be able to
> > > re-add it.
> > >
> > > 2. You can't disable flushing on suspend for a device-mapper device, when you
> > > want to change size. This means that if all your paths are down, you will fail
> > > the queued IOs when you suspend. This is a problem with the device-mapper kernel
> > > code, and there's no real way to avoid it, except by fixing it in the kernel.
> > >
> > > This commit also has some minor fixups for 238421, and adds the ability to
> > > disable and restore queueing on all multipath devices through multipathd
> > >
> > > Patches:
> > > http://sourceware.org/cgi-bin/cvsweb.cgi/multipath-tools/libmultipath/configure.c.diff?cvsroot=dm&only_with_tag=RHEL5_FC6&r1=1.2.2.3&r2=1.2.2.4
> > > http://sourceware.org/cgi-bin/cvsweb.cgi/multipath-tools/libmultipath/configure.h.diff?cvsroot=dm&only_with_tag=RHEL5_FC6&r1=1.1&r2=1.1.2.1
> > > http://sourceware.org/cgi-bin/cvsweb.cgi/multipath-tools/libmultipath/devmapper.c.diff?cvsroot=dm&only_with_tag=RHEL5_FC6&r1=1.22.2.5&r2=1.22.2.6
> > > http://sourceware.org/cgi-bin/cvsweb.cgi/multipath-tools/libmultipath/devmapper.h.diff?cvsroot=dm&only_with_tag=RHEL5_FC6&r1=1.11.2.4&r2=1.11.2.5
> > > http://sourceware.org/cgi-bin/cvsweb.cgi/multipath-tools/multipathd/cli.c.diff?cvsroot=dm&only_with_tag=RHEL5_FC6&r1=1.5.2.2&r2=1.5.2.3
> > > http://sourceware.org/cgi-bin/cvsweb.cgi/multipath-tools/multipathd/cli.h.diff?cvsroot=dm&only_with_tag=RHEL5_FC6&r1=1.5.2.2&r2=1.5.2.3
> > > http://sourceware.org/cgi-bin/cvsweb.cgi/multipath-tools/multipathd/cli_handlers.c.diff?cvsroot=dm&only_with_tag=RHEL5_FC6&r1=1.6.2.2&r2=1.6.2.3
> > > http://sourceware.org/cgi-bin/cvsweb.cgi/multipath-tools/multipathd/cli_handlers.h.diff?cvsroot=dm&only_with_tag=RHEL5_FC6&r1=1.3.2.2&r2=1.3.2.3
> > > http://sourceware.org/cgi-bin/cvsweb.cgi/multipath-tools/multipathd/main.c.diff?cvsroot=dm&only_with_tag=RHEL5_FC6&r1=1.69.2.13&r2=1.69.2.14
> > > http://sourceware.org/cgi-bin/cvsweb.cgi/multipath-tools/multipathd/main.h.diff?cvsroot=dm&only_with_tag=RHEL5_FC6&r1=1.7&r2=1.7.2.1
> > >
> >
> > Where can I get the multipath-tools sources that these patches apply cleanly
> > to? They do not apply cleanly to my multipath 0.4.8 sources, add there
> > seems to be some major differences in some places.
> >
> > Thanks,
> >
> > Andy
> >
>
> Responding to my own mail, I did got the source with the patches from the
> cvs. But, the resizing does not work for with with mounted volumes. There
> are 4 paths for the volume, so there is no probably with it failing paths.
> I get "domap(0) failure for create/reload map" when I run multipath -v 3.
>
> I can get dm to reconize the new size if the volume is umounted. But, I
> really would like it to work while it is mounted.
>
It should work for mounted volumes. Did you try
multipathd -k"resize map <mapname>"
Since this requires suspending without the no_flush option, I didn't
want to have it happen on a normal reload, and since without the kernel
fixes, this required removing and then readding paths, I did it through
multipathd.
So just running multipath -v3 after a path resize won't work. In fact, I
think it might leave the devices in the suspended state, since the
resume fails.
-Ben
> Andy
>
> --
> dm-devel mailing list
> dm-devel at redhat.com
> https://www.redhat.com/mailman/listinfo/dm-devel
More information about the dm-devel
mailing list