• Kent Overstreet's avatar
    bcachefs: Defer full journal entry validation · d1b2c864
    Kent Overstreet authored
    On journal read, previously we would do full journal entry validation
    immediately after reading a journal entry.
    
    However, this would lead to errors for journal entries we weren't
    actually going to use, either because they were too old or too new
    (newer than the most recent flush).
    
    We've observed write tearing on journal entries newer than the newest
    flush - which makes sense, prior to a flush there's no guarantees about
    write persistence.
    
    This patch defers full journal entry validation until the end of the
    journal read path, when we know which journal entries we'll want to use.
    Signed-off-by: default avatarKent Overstreet <kent.overstreet@linux.dev>
    d1b2c864
journal_io.c 46.3 KB