diff --git a/fs/jbd2/journal.c b/fs/jbd2/journal.c index 0e8014ea6b94ad8985f1b0b842f2cea550578e67..262419f83d800bfb6e4bbfb0ca93e3af2c3f64be 100644 --- a/fs/jbd2/journal.c +++ b/fs/jbd2/journal.c @@ -1371,6 +1371,10 @@ int jbd2_journal_check_used_features (journal_t *journal, unsigned long compat, if (!compat && !ro && !incompat) return 1; + /* Load journal superblock if it is not loaded yet. */ + if (journal->j_format_version == 0 && + journal_get_superblock(journal) != 0) + return 0; if (journal->j_format_version == 1) return 0;