bcachefs: Version table now lists required recovery passes
authorKent Overstreet <kent.overstreet@linux.dev>
Mon, 10 Jul 2023 17:42:26 +0000 (13:42 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 22 Oct 2023 21:10:06 +0000 (17:10 -0400)
commit065bd3356ce490ae9454d8b3c98ff298e13d09ac
tree968bb0d1b3135ca9d51cdf43c2a963bede5552ab
parent6619d84626ff266721f4c3c24339c60ca8cb12e0
bcachefs: Version table now lists required recovery passes

Now that we've got forward compatibility sorted out, we should be doing
more frequent version upgrades in the future.

To avoid having to run a full fsck for every version upgrade, this
improves the BCH_METADATA_VERSIONS() table to explicitly specify a
bitmask of recovery passes to run when upgrading to or past a given
version.

This means we can also delete PASS_UPGRADE().

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