[Cluster-devel] GFS2: Correctly set goal block after allocation
Steven Whitehouse
steve at chygwyn.com
Wed Sep 7 11:42:13 UTC 2011
>From 8b0b76a4d9dec1af3de7f443b8dc8e00ec825ad5 Mon Sep 17 00:00:00 2001
From: Steven Whitehouse <swhiteho at redhat.com>
Date: Wed, 7 Sep 2011 12:15:23 +0100
Subject: GFS2: Correctly set goal block after allocation
The new goal block should be set to the end of the newly
allocated extent, not the start of it.
Signed-off-by: Steven Whitehouse <swhiteho at redhat.com>
---
fs/gfs2/rgrp.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/fs/gfs2/rgrp.c b/fs/gfs2/rgrp.c
index 3088fb2..8ec4174 100644
--- a/fs/gfs2/rgrp.c
+++ b/fs/gfs2/rgrp.c
@@ -1346,7 +1346,7 @@ int gfs2_alloc_block(struct gfs2_inode *ip, u64 *bn, unsigned int *n)
rgd->rd_last_alloc = blk;
block = rgd->rd_data0 + blk;
- ip->i_goal = block;
+ ip->i_goal = block + *n - 1;
error = gfs2_meta_inode_buffer(ip, &dibh);
if (error == 0) {
struct gfs2_dinode *di = (struct gfs2_dinode *)dibh->b_data;
--
1.7.4
More information about the Cluster-devel
mailing list