diff options
author | Johann Lombardi <johann.lombardi@bull.net> | 2006-12-06 23:40:46 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.osdl.org> | 2006-12-07 11:39:46 -0500 |
commit | feb189274638ea357750a9e809f5a6e2223a082e (patch) | |
tree | ff783ee2a84cf6dd0319533515a8cfa2d21ec9a1 /fs/ext4/extents.c | |
parent | 97d2a80584b30b5cd32da411deca1986ef61877a (diff) |
[PATCH] ext4: fix credit calculation in ext4_ext_calc_credits_for_insert
Fix a nit in ext4_ext_calc_credits_for_insert(). Besides, credits for the
new root are already added in the index split accounting.
Signed-off-by: Johann Lombardi <johann.lombardi@bull.net>
Signed-off-by: Alex Tomas <alex@clusterfs.com>
Cc: <linux-ext4@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/ext4/extents.c')
-rw-r--r-- | fs/ext4/extents.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/fs/ext4/extents.c b/fs/ext4/extents.c index 1442ccbaea79..994a6e450e06 100644 --- a/fs/ext4/extents.c +++ b/fs/ext4/extents.c | |||
@@ -1531,16 +1531,17 @@ int inline ext4_ext_calc_credits_for_insert(struct inode *inode, | |||
1531 | 1531 | ||
1532 | /* | 1532 | /* |
1533 | * tree can be full, so it would need to grow in depth: | 1533 | * tree can be full, so it would need to grow in depth: |
1534 | * allocation + old root + new root | 1534 | * we need one credit to modify old root, credits for |
1535 | * new root will be added in split accounting | ||
1535 | */ | 1536 | */ |
1536 | needed += 2 + 1 + 1; | 1537 | needed += 1; |
1537 | 1538 | ||
1538 | /* | 1539 | /* |
1539 | * Index split can happen, we would need: | 1540 | * Index split can happen, we would need: |
1540 | * allocate intermediate indexes (bitmap + group) | 1541 | * allocate intermediate indexes (bitmap + group) |
1541 | * + change two blocks at each level, but root (already included) | 1542 | * + change two blocks at each level, but root (already included) |
1542 | */ | 1543 | */ |
1543 | needed = (depth * 2) + (depth * 2); | 1544 | needed += (depth * 2) + (depth * 2); |
1544 | 1545 | ||
1545 | /* any allocation modifies superblock */ | 1546 | /* any allocation modifies superblock */ |
1546 | needed += 1; | 1547 | needed += 1; |