From mboxrd@z Thu Jan 1 00:00:00 1970 From: Steven Whitehouse Date: Wed, 18 Jul 2012 17:16:51 +0100 Subject: [Cluster-devel] [GFS2 PATCH] - kernel panic with small gfs2 filesystems - 1 RG In-Reply-To: <9d2529a5-926d-4920-b0bc-0d77a4964f64@zmail12.collab.prod.int.phx2.redhat.com> References: <9d2529a5-926d-4920-b0bc-0d77a4964f64@zmail12.collab.prod.int.phx2.redhat.com> Message-ID: <1342628211.2913.24.camel@menhir> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Hi, Now in the -nmw tree. Thanks, Steve. On Wed, 2012-07-18 at 11:56 -0400, Abhijith Das wrote: > In the unlikely setup where there's only one resource group in the gfs2 filesystem, gfs2_rgrpd_get_next() returns a NULL rgd that is not dealt with properly, causing a kernel NULL ptr dereference. This patch fixes this issue. > > This bug was reported in rhel6: https://bugzilla.redhat.com/show_bug.cgi?id=838638 > > Signed-off-by: Abhi Das > > > diff --git a/fs/gfs2/rgrp.c b/fs/gfs2/rgrp.c > index e53d0a1..fb70792 100644 > --- a/fs/gfs2/rgrp.c > +++ b/fs/gfs2/rgrp.c > @@ -1276,6 +1276,7 @@ int gfs2_inplace_reserve(struct gfs2_inode *ip, u32 requested) > /* fall through */ > case GLR_TRYFAILED: > rgd = gfs2_rgrpd_get_next(rgd); > + rgd = rgd ? : begin; /* if NULL, wrap */ > if (rgd != begin) /* If we didn't wrap */ > break; > >