[Cluster-devel] [PATCH 2/2] GFS2: Fix bmap allocation corner-case bug

2010-02-12 Thread Steven Whitehouse
This patch solves a corner case during allocation which occurs if both
metadata (indirect) and data blocks are required but there is an
obstacle in the filesystem (e.g. a resource group header or another
allocated block) such that when the allocation is requested only
enough blocks for the metadata are returned.

By changing the exit condition of this loop, we ensure that a
minimum of one data block will always be returned.

Signed-off-by: Steven Whitehouse swhit...@redhat.com
---
 fs/gfs2/bmap.c |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/fs/gfs2/bmap.c b/fs/gfs2/bmap.c
index 6d47379..583e823 100644
--- a/fs/gfs2/bmap.c
+++ b/fs/gfs2/bmap.c
@@ -541,7 +541,7 @@ static int gfs2_bmap_alloc(struct inode *inode, const 
sector_t lblock,
*ptr++ = cpu_to_be64(bn++);
break;
}
-   } while (state != ALLOC_DATA);
+   } while ((state != ALLOC_DATA) || !dblock);
 
ip-i_height = height;
gfs2_add_inode_blocks(ip-i_inode, alloced);
-- 
1.6.2.5



[Cluster-devel] [GFS2] Pre-pull patch posting (fixes)

2010-02-12 Thread Steven Whitehouse
Hi,

Here are a couple of GFS2 fixes. Both are one-liners,

Steve.



[Cluster-devel] [PATCH 1/2] GFS2: Fix error code

2010-02-12 Thread Steven Whitehouse
From: Abhijith Das a...@redhat.com

We need this one-liner to signal the mount helper of the 'insufficient 
journals' condition.

Signed-off-by: Abhijith Das a...@redhat.com
Signed-off-by: Steven Whitehouse swhit...@redhat.com
---
 fs/gfs2/ops_fstype.c |2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/fs/gfs2/ops_fstype.c b/fs/gfs2/ops_fstype.c
index 8a102f7..a86ed63 100644
--- a/fs/gfs2/ops_fstype.c
+++ b/fs/gfs2/ops_fstype.c
@@ -725,7 +725,7 @@ static int init_journal(struct gfs2_sbd *sdp, int undo)
goto fail;
}
 
-   error = -EINVAL;
+   error = -EUSERS;
if (!gfs2_jindex_size(sdp)) {
fs_err(sdp, no journals!\n);
goto fail_jindex;
-- 
1.6.2.5



[Cluster-devel] GFS2: Pull request (fixes)

2010-02-12 Thread Steven Whitehouse
Hi,

Please consider pulling the following changes,

Steve.

-
The following changes since commit 676ad585531e965416fd958747894541dabcec96:
  Linus Torvalds (1):
Merge branch 'for-linus' of git://git.kernel.org/.../bp/bp

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-fixes.git master

Abhijith Das (1):
  GFS2: Fix error code

Steven Whitehouse (1):
  GFS2: Fix bmap allocation corner-case bug

 fs/gfs2/bmap.c   |2 +-
 fs/gfs2/ops_fstype.c |2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)