• Jan Kara's avatar
    ext4: don't BUG on inconsistent journal feature · 11215630
    Jan Kara authored
    A customer has reported a BUG_ON in ext4_clear_journal_err() hitting
    during an LTP testing. Either this has been caused by a test setup
    issue where the filesystem was being overwritten while LTP was mounting
    it or the journal replay has overwritten the superblock with invalid
    data. In either case it is preferable we don't take the machine down
    with a BUG_ON. So handle the situation of unexpectedly missing
    has_journal feature more gracefully. We issue warning and fail the mount
    in the cases where the race window is narrow and the failed check is
    most likely a programming error. In cases where fs corruption is more
    likely, we do full ext4_error() handling before failing mount / remount.
    Reviewed-by: default avatarLukas Czerner <lczerner@redhat.com>
    Signed-off-by: default avatarJan Kara <jack@suse.cz>
    Link: https://lore.kernel.org/r/20200710140759.18031-1-jack@suse.czSigned-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
    11215630
super.c 180 KB