bcachefs: Check for writing superblocks with nonsense member seq fields
authorKent Overstreet <kent.overstreet@linux.dev>
Fri, 8 Mar 2024 21:10:08 +0000 (16:10 -0500)
committerKent Overstreet <kent.overstreet@linux.dev>
Thu, 14 Mar 2024 01:22:26 +0000 (21:22 -0400)
commitc42006458b4239b7eb50f33af523b67c7a55e42e
treed1b1f90ddd3b531cb2330a23acdb1e8410089908
parent5e105fb806c622cd8b3da0031e74367a3b8a326b
bcachefs: Check for writing superblocks with nonsense member seq fields

We're seeing some unmountable filesystems due to split brain detection
going awry; it seems we somehow wrote out superblocks where we updated
the superblock seq without updating any member seq fields.

A given device's superblock should always have the main seq equal to
it's member seq field, so this is easy to check for.

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