[PATCH 6/6 V2]Ext4 journal credits reservation fixes for defrag
From: Mingming Cao <hidden>
Date: 2008-08-16 00:45:31
Same as Version 1, Resend for the completeness of the credit fixes version 2 This patch should be merged with ext4-online-defrag-alloc-contiguous-blks.patch It originally came from ext4_journal_credits_fix_for_writepages.patch, but was split off when this patch was moved into the stable part of the patch queue. Cc: Akira Fujita <redacted> Cc: Takashi Sato <redacted> Signed-off-by: Mingming Cao <redacted> Signed-off-by: "Theodore Ts'o" <tytso@mit.edu> --- Index: linux-2.6.27-rc1/fs/ext4/defrag.c ===================================================================
--- linux-2.6.27-rc1.orig/fs/ext4/defrag.c 2008-08-11 17:15:49.000000000 -0700
+++ linux-2.6.27-rc1/fs/ext4/defrag.c 2008-08-11 19:46:59.000000000 -0700@@ -186,9 +186,9 @@ ext4_defrag_alloc_blocks(handle_t *handl struct buffer_head *bh = NULL; int err, i, credits = 0; - credits = ext4_ext_calc_credits_for_insert(dest_inode, dest_path); - err = ext4_ext_journal_restart(handle, - credits + EXT4_TRANS_META_BLOCKS); + credits = ext4_ext_calc_credits_for_single_extent(dest_inode, + ar->len, dest_path); + err = ext4_ext_journal_restart(handle, credits); if (err) return err;