summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Morton <akpm@digeo.com>2002-12-14 03:18:11 -0800
committerJaroslav Kysela <perex@suse.cz>2002-12-14 03:18:11 -0800
commit8725c3fccdf07ee30d1e5bac5b065c16e4632982 (patch)
tree10c736cb350fcd23f6c5d055630fb67fc744f2a7
parente440686376a7dd991c7dc5daeeb2a61de42f05b3 (diff)
[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.
-rw-r--r--fs/ext3/inode.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ext3/inode.c b/fs/ext3/inode.c
index fe1c0cca19bb..cf150fed6765 100644
--- a/fs/ext3/inode.c
+++ b/fs/ext3/inode.c
@@ -2697,7 +2697,7 @@ void ext3_dirty_inode(struct inode *inode)
handle_t *handle;
lock_kernel();
- handle = ext3_journal_start(inode, 1);
+ handle = ext3_journal_start(inode, 2);
if (IS_ERR(handle))
goto out;
if (current_handle &&