thus we need not account it twice
+ if (failed == 0 || create == 0)
+ return 0;
+
-+ needed_blocks = ext3_writepage_trans_blocks(inode) * failed;
++ needed_blocks = ext3_writepage_trans_blocks(inode);
+ handle = ext3_journal_start(inode, needed_blocks);
+ if (IS_ERR(handle))
+ return PTR_ERR(handle);
+ if (failed == 0 || create == 0)
+ return 0;
+
-+ needed_blocks = ext3_writepage_trans_blocks(inode) * failed;
++ needed_blocks = ext3_writepage_trans_blocks(inode);
+ lock_kernel();
+ handle = ext3_journal_start(inode, needed_blocks);
+ unlock_kernel();