37 lines
1.4 KiB
Diff
37 lines
1.4 KiB
Diff
From 839c29d574315fe2f3c3f707f248d75348cf769d Mon Sep 17 00:00:00 2001
|
|
From: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Date: Tue, 26 Nov 2024 21:27:16 -0500
|
|
Subject: [PATCH 128/233] bcachefs: Go RW earlier, for normal rw mount
|
|
Content-Type: text/plain; charset="utf-8"
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
Previously, when mounting read-write after a clean shutdown, we wouldn't
|
|
go read-write until after all the recovery passes completed.
|
|
|
|
Now, go RW early in recovery, the same as any other situation we'll need
|
|
to go read-write. This fixes a bug where we discover unlinked inodes
|
|
after a clean shutdown: repair fails because we're read only.
|
|
|
|
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
|
|
Signed-off-by: Alexander Miroshnichenko <alex@millerson.name>
|
|
---
|
|
fs/bcachefs/recovery_passes.c | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/fs/bcachefs/recovery_passes.c b/fs/bcachefs/recovery_passes.c
|
|
index 1240c5c19fea..f6d3a99cb63e 100644
|
|
--- a/fs/bcachefs/recovery_passes.c
|
|
+++ b/fs/bcachefs/recovery_passes.c
|
|
@@ -46,7 +46,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 || c->opts.recovery_passes)
|
|
+ if (keys->nr || !c->opts.read_only || c->opts.fsck || !c->sb.clean || c->opts.recovery_passes)
|
|
return bch2_fs_read_write_early(c);
|
|
return 0;
|
|
}
|
|
--
|
|
2.45.2
|
|
|