Commit 8725c3fc authored by Andrew Morton's avatar Andrew Morton Committed by Jaroslav Kysela

[PATCH] Reserve an additional transaction block in

Under rare conditions (filesystem corruption, really) it is possible
for ext3_dirty_inode() to require _two_ blocks for the transaction: one
for the inode and one to update the superblock - to set
EXT3_FEATURE_RO_COMPAT_LARGE_FILE.  This causes the filesystem to go
BUG.

So reserve an additional block for that eventuality.
parent e4406863
...@@ -2697,7 +2697,7 @@ void ext3_dirty_inode(struct inode *inode) ...@@ -2697,7 +2697,7 @@ void ext3_dirty_inode(struct inode *inode)
handle_t *handle; handle_t *handle;
lock_kernel(); lock_kernel();
handle = ext3_journal_start(inode, 1); handle = ext3_journal_start(inode, 2);
if (IS_ERR(handle)) if (IS_ERR(handle))
goto out; goto out;
if (current_handle && if (current_handle &&
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment