• Darrick J. Wong's avatar
    jbd2: fix regression where we fail to initialize checksum seed when loading · 32f38691
    Darrick J. Wong authored
    When we're enabling journal features, we cannot use the predicate
    jbd2_journal_has_csum_v2or3() because we haven't yet set the sb
    feature flag fields!  Moreover, we just finished loading the shash
    driver, so the test is unnecessary; calculate the seed always.
    
    Without this patch, we fail to initialize the checksum seed the first
    time we turn on journal_checksum, which means that all journal blocks
    written during that first mount are corrupt.  Transactions written
    after the second mount will be fine, since the feature flag will be
    set in the journal superblock.  xfstests generic/{034,321,322} are the
    regression tests.
    
    (This is important for 3.18.)
    Signed-off-by: default avatarDarrick J. Wong <darrick.wong@oracle.coM>
    Reported-by: default avatarEric Whitney <enwlinux@gmail.com>
    Signed-off-by: default avatarTheodore Ts'o <tytso@mit.edu>
    32f38691
journal.c 74 KB