Skip to content

Commit

Permalink
jbd: Fail to load a journal if it is too short
Browse files Browse the repository at this point in the history
Due to on disk corruption, it can happen that journal is too short. Fail
to load it in such case so that we don't oops somewhere later.

Reported-by: Nageswara R Sastry <[email protected]>
Signed-off-by: Jan Kara <[email protected]>
  • Loading branch information
jankara committed Jul 15, 2009
1 parent e9e961c commit 7447a66
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions fs/jbd/journal.c
Original file line number Diff line number Diff line change
Expand Up @@ -848,6 +848,12 @@ static int journal_reset(journal_t *journal)

first = be32_to_cpu(sb->s_first);
last = be32_to_cpu(sb->s_maxlen);
if (first + JFS_MIN_JOURNAL_BLOCKS > last + 1) {
printk(KERN_ERR "JBD: Journal too short (blocks %lu-%lu).\n",
first, last);
journal_fail_superblock(journal);
return -EINVAL;
}

journal->j_first = first;
journal->j_last = last;
Expand Down

0 comments on commit 7447a66

Please sign in to comment.