[Cluster-devel] [GFS2 PATCH] gfs2-utils: Fix hang on withdraw

Abhijith Das adas at redhat.com
Tue Aug 4 14:40:25 UTC 2015



----- Original Message -----
> From: "Andrew Price" <anprice at redhat.com>
> To: "Abhijith Das" <adas at redhat.com>, "cluster-devel" <cluster-devel at redhat.com>
> Sent: Tuesday, August 4, 2015 6:06:16 AM
> Subject: Re: [Cluster-devel] [GFS2 PATCH] gfs2-utils: Fix hang on withdraw
> 
> Hi Abhi,
> 
> On 03/08/15 20:30, Abhijith Das wrote:
> > Issuing a withdraw on a gfs2 filesystem causes a hang. When
> > gfs_controld was removed, the userspace functionality that
> > completes a withdraw operation went away. This causes gfs2
> > kernel to hang waiting for a withdraw completion ack from
> > userspace.
> >
> > This patchset introduces a uevent-based shell script to do
> > the job that gfs_controld used to do on withdraw. An 'offline'
> > uevent triggers the execution of this script. This script
> > suspends the device associated with the filesystem and signals
> > a completed withdraw to the kernel.
> >
> > Resolves: rhbz#1225634
> > Signed-off-by: Abhi Das <adas at redhat.com>
> > ---
> >   gfs2/scripts/82-gfs2-withdraw.rules |  2 ++
> >   gfs2/scripts/gfs2_wd_udev.sh        | 30 ++++++++++++++++++++++++++++++
> >   2 files changed, 32 insertions(+)
> >   create mode 100644 gfs2/scripts/82-gfs2-withdraw.rules
> >   create mode 100755 gfs2/scripts/gfs2_wd_udev.sh
> 
> Even if they're not getting installed in 'make install' the build system
> will need to know about them, in gfs2/scripts/Makefile.am:
> 
> noinst_SCRIPTS = \
> 	82-gfs2-withdraw.rules \
> 	gfs2_wd_udev.sh
> 
> I think some documentation in README.build would be useful too, so that
> package maintainers know why and where to install them.
> 
> > diff --git a/gfs2/scripts/82-gfs2-withdraw.rules
> > b/gfs2/scripts/82-gfs2-withdraw.rules
> > new file mode 100644
> > index 0000000..c1ab02b
> > --- /dev/null
> > +++ b/gfs2/scripts/82-gfs2-withdraw.rules
> > @@ -0,0 +1,2 @@
> > +SUBSYSTEM=="gfs2", ACTION=="offline", RUN+="/bin/sh /sbin/gfs2_wd_udev.sh"
> 
> Perhaps that should be /usr/sbin instead of /sbin, after the whole
> "UsrMove" thing.
> 

Ok, Thanks! I'll make these changes and re-post.

Cheers!
--Abhi




More information about the Cluster-devel mailing list