|
@@ -1187,6 +1187,12 @@ static int journal_reset(journal_t *journal)
|
|
|
|
|
|
first = be32_to_cpu(sb->s_first);
|
|
first = be32_to_cpu(sb->s_first);
|
|
last = be32_to_cpu(sb->s_maxlen);
|
|
last = be32_to_cpu(sb->s_maxlen);
|
|
|
|
+ if (first + JBD2_MIN_JOURNAL_BLOCKS > last + 1) {
|
|
|
|
+ printk(KERN_ERR "JBD: Journal too short (blocks %llu-%llu).\n",
|
|
|
|
+ first, last);
|
|
|
|
+ journal_fail_superblock(journal);
|
|
|
|
+ return -EINVAL;
|
|
|
|
+ }
|
|
|
|
|
|
journal->j_first = first;
|
|
journal->j_first = first;
|
|
journal->j_last = last;
|
|
journal->j_last = last;
|