summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@linux.dev>2024-04-12 14:05:36 -0400
committerKent Overstreet <kent.overstreet@linux.dev>2024-04-13 22:48:17 -0400
commit4518e80adfdbfdec1cc79c98bc73677ff44d96bd (patch)
treee32d613fd738d91ded3d5c5e05faf03623e59da8
parent9abb6dd7ce5a261f7aebf6f396b50a63db71133f (diff)
downloadlinux-stable-4518e80adfdbfdec1cc79c98bc73677ff44d96bd.tar.gz
linux-stable-4518e80adfdbfdec1cc79c98bc73677ff44d96bd.tar.bz2
linux-stable-4518e80adfdbfdec1cc79c98bc73677ff44d96bd.zip
bcachefs: Go rw if running any explicit recovery passes
This fixes a bug where we fail to start when upgrading/downgrading because we forgot we needed to go rw. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
-rw-r--r--fs/bcachefs/recovery_passes.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/bcachefs/recovery_passes.c b/fs/bcachefs/recovery_passes.c
index cb501460d615..0cec0f7d9703 100644
--- a/fs/bcachefs/recovery_passes.c
+++ b/fs/bcachefs/recovery_passes.c
@@ -44,7 +44,7 @@ static int bch2_set_may_go_rw(struct bch_fs *c)
set_bit(BCH_FS_may_go_rw, &c->flags);
- if (keys->nr || c->opts.fsck || !c->sb.clean)
+ if (keys->nr || c->opts.fsck || !c->sb.clean || c->recovery_passes_explicit)
return bch2_fs_read_write_early(c);
return 0;
}