linux/fs/bcachefs
Kent Overstreet 067d228bb0 bcachefs: Enumerate recovery passes
Recovery and fsck have many different passes/jobs to do, which always
run in the same order - but not all of them run all the time. Some are
for fsck, some for unclean shutdown, some for version upgrades.

This adds some new structure: a defined list of recovery passes that we
can run in a loop, as well as consolidating the log messages.

The main benefit is consolidating the "should run this recovery pass"
logic, as well as cleaning up the "this recovery pass has finished"
state; instead of having a bunch of ad-hoc state bits in c->flags, we've
now got c->curr_recovery_pass.

By consolidating the "should run this recovery pass" logic, in the
future on disk format upgrades will be able to say "upgrading to this
version requires x passes to run", instead of forcing all of fsck to
run.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
2023-10-22 17:10:06 -04:00
..
2023-10-22 17:10:06 -04:00
2023-10-22 17:09:12 -04:00
2023-10-22 17:10:05 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:09:31 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:09:53 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:10:05 -04:00
2023-10-22 17:09:51 -04:00
2023-10-22 17:09:57 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:09:32 -04:00
2023-10-22 17:09:54 -04:00
2023-10-22 17:09:45 -04:00
2023-10-22 17:10:03 -04:00
2023-10-22 17:09:45 -04:00
2023-10-22 17:09:32 -04:00
2023-10-22 17:08:07 -04:00
2023-10-22 17:10:04 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:09:56 -04:00
2023-10-22 17:10:05 -04:00
2023-10-22 17:10:03 -04:00
2023-10-22 17:09:51 -04:00
2023-10-22 17:10:05 -04:00
2023-10-22 17:09:33 -04:00
2023-10-22 17:08:13 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:09:44 -04:00
2023-10-22 17:10:05 -04:00
2023-10-22 17:09:51 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:09:32 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:10:02 -04:00
2023-10-22 17:10:00 -04:00
2023-10-22 17:10:06 -04:00
2023-10-22 17:09:25 -04:00