* [Cluster-devel] [GFS2 PATCH] GFS2: Stop block extents at the end of bitmaps [not found] <593383397.4340210.1346157882093.JavaMail.root@redhat.com> @ 2012-08-28 12:45 ` Bob Peterson 2012-08-28 13:06 ` Steven Whitehouse 0 siblings, 1 reply; 2+ messages in thread From: Bob Peterson @ 2012-08-28 12:45 UTC (permalink / raw) To: cluster-devel.redhat.com Hi, This patch stops multiple block allocations if a nonzero return code is received from gfs2_rbm_from_block. Without this patch, if enough pressure is put on the file system, you get a kernel warning quickly followed by: BUG: unable to handle kernel NULL pointer dereference at (null) IP: [<ffffffffa04f47e8>] gfs2_alloc_blocks+0x2c8/0x880 [gfs2] With this patch, things run normally. Regards, Bob Peterson Red Hat File Systems Signed-off-by: Bob Peterson <rpeterso@redhat.com> --- diff --git a/fs/gfs2/rgrp.c b/fs/gfs2/rgrp.c index 87ee0b7..081fba8 100644 --- a/fs/gfs2/rgrp.c +++ b/fs/gfs2/rgrp.c @@ -1852,8 +1852,7 @@ static void gfs2_alloc_extent(const struct gfs2_rbm *rbm, bool dinode, block++; while (*n < elen) { ret = gfs2_rbm_from_block(&pos, block); - WARN_ON(ret); - if (gfs2_testbit(&pos) != GFS2_BLKST_FREE) + if (ret || gfs2_testbit(&pos) != GFS2_BLKST_FREE) break; gfs2_trans_add_bh(pos.rgd->rd_gl, pos.bi->bi_bh, 1); gfs2_setbit(&pos, true, GFS2_BLKST_USED); ^ permalink raw reply related [flat|nested] 2+ messages in thread
* [Cluster-devel] [GFS2 PATCH] GFS2: Stop block extents at the end of bitmaps 2012-08-28 12:45 ` [Cluster-devel] [GFS2 PATCH] GFS2: Stop block extents at the end of bitmaps Bob Peterson @ 2012-08-28 13:06 ` Steven Whitehouse 0 siblings, 0 replies; 2+ messages in thread From: Steven Whitehouse @ 2012-08-28 13:06 UTC (permalink / raw) To: cluster-devel.redhat.com Hi, On Tue, 2012-08-28 at 08:45 -0400, Bob Peterson wrote: > Hi, > > This patch stops multiple block allocations if a nonzero > return code is received from gfs2_rbm_from_block. Without > this patch, if enough pressure is put on the file system, > you get a kernel warning quickly followed by: > BUG: unable to handle kernel NULL pointer dereference at (null) > IP: [<ffffffffa04f47e8>] gfs2_alloc_blocks+0x2c8/0x880 [gfs2] > With this patch, things run normally. > > Regards, > Now in the -nmw tree. Thanks, Steve. > Bob Peterson > Red Hat File Systems > > Signed-off-by: Bob Peterson <rpeterso@redhat.com> > --- > diff --git a/fs/gfs2/rgrp.c b/fs/gfs2/rgrp.c > index 87ee0b7..081fba8 100644 > --- a/fs/gfs2/rgrp.c > +++ b/fs/gfs2/rgrp.c > @@ -1852,8 +1852,7 @@ static void gfs2_alloc_extent(const struct gfs2_rbm *rbm, bool dinode, > block++; > while (*n < elen) { > ret = gfs2_rbm_from_block(&pos, block); > - WARN_ON(ret); > - if (gfs2_testbit(&pos) != GFS2_BLKST_FREE) > + if (ret || gfs2_testbit(&pos) != GFS2_BLKST_FREE) > break; > gfs2_trans_add_bh(pos.rgd->rd_gl, pos.bi->bi_bh, 1); > gfs2_setbit(&pos, true, GFS2_BLKST_USED); > ^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-08-28 13:06 UTC | newest] Thread overview: 2+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <593383397.4340210.1346157882093.JavaMail.root@redhat.com> 2012-08-28 12:45 ` [Cluster-devel] [GFS2 PATCH] GFS2: Stop block extents at the end of bitmaps Bob Peterson 2012-08-28 13:06 ` Steven Whitehouse
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).