rpms/kernel/F-12 ext4-fix-accounting-of-reserved-metadata-blocks.patch, NONE, 1.1.2.1

Chuck Ebbert cebbert at fedoraproject.org
Tue Feb 9 18:52:10 UTC 2010


Author: cebbert

Update of /cvs/pkgs/rpms/kernel/F-12
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv5195

Added Files:
      Tag: private-fedora-12-2_6_31
	ext4-fix-accounting-of-reserved-metadata-blocks.patch 
Log Message:
actually add the patch

ext4-fix-accounting-of-reserved-metadata-blocks.patch:
 inode.c |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

--- NEW FILE ext4-fix-accounting-of-reserved-metadata-blocks.patch ---
From: Theodore Ts'o <tytso at mit.edu>
Date: Fri, 1 Jan 2010 07:36:15 +0000 (-0500)
Subject: ext4: Fix accounting of reserved metadata blocks
X-Git-Tag: v2.6.33-rc3~11^2~1
X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=ee5f4d9cdf32fd99172d11665c592a288c2b1ff4

ext4: Fix accounting of reserved metadata blocks

Commit 0637c6f had a typo which caused the reserved metadata blocks to
not be released correctly.   Fix this.

Signed-off-by: "Theodore Ts'o" <tytso at mit.edu>
---

diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c
index 84eeb8f..bdaa92a 100644
--- a/fs/ext4/inode.c
+++ b/fs/ext4/inode.c
@@ -1076,9 +1076,9 @@ static void ext4_da_update_reserve_space(struct inode *inode, int used)
 		 * only when we have written all of the delayed
 		 * allocation blocks.
 		 */
-		mdb_free = ei->i_allocated_meta_blocks;
+		mdb_free = ei->i_reserved_meta_blocks;
+		ei->i_reserved_meta_blocks = 0;
 		percpu_counter_sub(&sbi->s_dirtyblocks_counter, mdb_free);
-		ei->i_allocated_meta_blocks = 0;
 	}
 
 	spin_unlock(&EXT4_I(inode)->i_block_reservation_lock);
@@ -1889,8 +1889,8 @@ static void ext4_da_release_space(struct inode *inode, int to_free)
 		 * only when we have written all of the delayed
 		 * allocation blocks.
 		 */
-		to_free += ei->i_allocated_meta_blocks;
-		ei->i_allocated_meta_blocks = 0;
+		to_free += ei->i_reserved_meta_blocks;
+		ei->i_reserved_meta_blocks = 0;
 	}
 
 	/* update fs dirty blocks counter */



More information about the scm-commits mailing list