bcachefs: Recover from blacklisted journal entries
authorKent Overstreet <kent.overstreet@linux.dev>
Wed, 14 Dec 2022 19:47:42 +0000 (14:47 -0500)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:09:48 +0000 (17:09 -0400)
commit1ba8a796b427d312aa68c2e04e00b42ec742883e
tree575f1dd06ce6c49e99a8746ee066f8c6efc146ec
parent14d7d61fac9c151a270c6ef6f969993eae9f1bbf
bcachefs: Recover from blacklisted journal entries

If it so happens that we crash while dirty, meaning we don't have the
superblock clean section, and we erroneously mark a journal entry we
wrote as blacklisted, we won't be able to recover.

This patch fixes this by adding a fallback: if we've got no superblock
clean section, and no non-ignored journal entries, we try the most
recent ignored journal entry.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/journal_io.c
fs/bcachefs/recovery.c