From e137e99eb988fbd01498e4270711bd608c88b45b Mon Sep 17 00:00:00 2001 From: Abhijith Das Date: Tue, 14 Aug 2007 15:34:58 -0500 Subject: [PATCH] --- yaml --- r: 67662 b: refs/heads/master c: 0fd5355470ea40355b8af76d01748ec7b9926d4d h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/fs/gfs2/quota.c | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 6b3c238c704c..e22f815061ca 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5d35e31f43c4910d0b6afc5160728a84bbaf86f0 +refs/heads/master: 0fd5355470ea40355b8af76d01748ec7b9926d4d diff --git a/trunk/fs/gfs2/quota.c b/trunk/fs/gfs2/quota.c index 6e546ee8f3d4..5dfa4656122b 100644 --- a/trunk/fs/gfs2/quota.c +++ b/trunk/fs/gfs2/quota.c @@ -614,6 +614,16 @@ static int gfs2_adjust_quota(struct gfs2_inode *ip, loff_t loc, s64 value; int err = -EIO; + if (gfs2_is_stuffed(ip)) { + struct gfs2_alloc *al = NULL; + al = gfs2_alloc_get(ip); + /* just request 1 blk */ + al->al_requested = 1; + gfs2_inplace_reserve(ip); + gfs2_unstuff_dinode(ip, NULL); + gfs2_inplace_release(ip); + gfs2_alloc_put(ip); + } page = grab_cache_page(mapping, index); if (!page) return -ENOMEM;