summary refs log tree commit diff
path: root/fs/ext2/balloc.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2010-07-22 01:13:36 +0400
committerAl Viro <viro@zeniv.linux.org.uk>2010-08-09 16:47:54 -0400
commit3889717d2851bf38015c0b291026c07c02264623 (patch)
tree730ce868c322caabfb550cae816c30d210f9d8be /fs/ext2/balloc.c
parent5ccb4a78d8c0e27985afec32cc4894d48e7b876e (diff)
downloadlinux-3889717d2851bf38015c0b291026c07c02264623.tar.gz
ext2: switch to dquot_free_block_nodirty()
brute-force conversion

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/ext2/balloc.c')
-rw-r--r--fs/ext2/balloc.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/fs/ext2/balloc.c b/fs/ext2/balloc.c
index e8766a396776..db69c1206f13 100644
--- a/fs/ext2/balloc.c
+++ b/fs/ext2/balloc.c
@@ -571,7 +571,8 @@ do_more:
 error_return:
 	brelse(bitmap_bh);
 	release_blocks(sb, freed);
-	dquot_free_block(inode, freed);
+	dquot_free_block_nodirty(inode, freed);
+	mark_inode_dirty(inode);
 }
 
 /**
@@ -1418,7 +1419,8 @@ allocated:
 
 	*errp = 0;
 	brelse(bitmap_bh);
-	dquot_free_block(inode, *count-num);
+	dquot_free_block_nodirty(inode, *count-num);
+	mark_inode_dirty(inode);
 	*count = num;
 	return ret_block;
 
@@ -1428,8 +1430,10 @@ out:
 	/*
 	 * Undo the block allocation
 	 */
-	if (!performed_allocation)
-		dquot_free_block(inode, *count);
+	if (!performed_allocation) {
+		dquot_free_block_nodirty(inode, *count);
+		mark_inode_dirty(inode);
+	}
 	brelse(bitmap_bh);
 	return 0;
 }