]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blame - releases/2.6.32.17/0008-ext4-Fix-accounting-of-reserved-metadata-blocks.patch
4.9-stable patches
[thirdparty/kernel/stable-queue.git] / releases / 2.6.32.17 / 0008-ext4-Fix-accounting-of-reserved-metadata-blocks.patch
CommitLineData
7d777456
GKH
1From 81799214a5369211cf9046735dafcf59a29e7454 Mon Sep 17 00:00:00 2001
2From: Theodore Ts'o <tytso@mit.edu>
3Date: Sun, 30 May 2010 22:49:22 -0400
4Subject: ext4: Fix accounting of reserved metadata blocks
5
6commit ee5f4d9cdf32fd99172d11665c592a288c2b1ff4 upstream (as of v2.6.33-rc3)
7
8Commit 0637c6f had a typo which caused the reserved metadata blocks to
9not be released correctly. Fix this.
10
11Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
12Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13---
14 fs/ext4/inode.c | 8 ++++----
15 1 file changed, 4 insertions(+), 4 deletions(-)
16
17--- a/fs/ext4/inode.c
18+++ b/fs/ext4/inode.c
19@@ -1118,9 +1118,9 @@ static void ext4_da_update_reserve_space
20 * only when we have written all of the delayed
21 * allocation blocks.
22 */
23- mdb_free = ei->i_allocated_meta_blocks;
24+ mdb_free = ei->i_reserved_meta_blocks;
25+ ei->i_reserved_meta_blocks = 0;
26 percpu_counter_sub(&sbi->s_dirtyblocks_counter, mdb_free);
27- ei->i_allocated_meta_blocks = 0;
28 }
29 spin_unlock(&EXT4_I(inode)->i_block_reservation_lock);
30
31@@ -1931,8 +1931,8 @@ static void ext4_da_release_space(struct
32 * only when we have written all of the delayed
33 * allocation blocks.
34 */
35- to_free += ei->i_allocated_meta_blocks;
36- ei->i_allocated_meta_blocks = 0;
37+ to_free += ei->i_reserved_meta_blocks;
38+ ei->i_reserved_meta_blocks = 0;
39 }
40
41 /* update fs dirty blocks counter */