From mboxrd@z Thu Jan 1 00:00:00 1970 From: Steven Whitehouse Date: Thu, 03 Jan 2008 15:29:58 +0000 Subject: [Cluster-devel] [GFS2 patch] Initialize extent_list earlier In-Reply-To: <1199373893.7988.14.camel@technetium.msp.redhat.com> References: <1199373893.7988.14.camel@technetium.msp.redhat.com> Message-ID: <1199374198.22038.55.camel@quoit> 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 git tree. Thanks, Steve. On Thu, 2008-01-03 at 09:24 -0600, Bob Peterson wrote: > Hi, > > Here is a patch for the latest upstream GFS2 code: > The journal extent map needs to be initialized sooner than it > currently is. Otherwise failed mount attempts (e.g. not enough > journals, etc.) may panic trying to access the uninitialized list. > > Regards, > > Bob Peterson > > Signed-off-by: Bob Peterson > -- > fs/gfs2/ops_fstype.c | 1 - > fs/gfs2/super.c | 1 + > 2 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/fs/gfs2/ops_fstype.c b/fs/gfs2/ops_fstype.c > index a77d41f..9ffc10b 100644 > --- a/fs/gfs2/ops_fstype.c > +++ b/fs/gfs2/ops_fstype.c > @@ -330,7 +330,6 @@ static int map_journal_extents(struct gfs2_sbd *sdp) > struct buffer_head bh; > int rc = 0; > > - INIT_LIST_HEAD(&jd->extent_list); > prev_db = 0; > > for (lb = 0; lb < ip->i_di.di_size >> sdp->sd_sb.sb_bsize_shift; lb++) { > diff --git a/fs/gfs2/super.c b/fs/gfs2/super.c > index 73e49df..fa86038 100644 > --- a/fs/gfs2/super.c > +++ b/fs/gfs2/super.c > @@ -385,6 +385,7 @@ int gfs2_jindex_hold(struct gfs2_sbd *sdp, struct gfs2_holder *ji_gh) > if (!jd) > break; > > + INIT_LIST_HEAD(&jd->extent_list); > jd->jd_inode = gfs2_lookupi(sdp->sd_jindex, &name, 1, NULL); > if (!jd->jd_inode || IS_ERR(jd->jd_inode)) { > if (!jd->jd_inode) > >