summaryrefslogtreecommitdiff
path: root/fs/bcachefs/replicas.c
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2021-10-21 07:38:13 +0300
committerKent Overstreet <kent.overstreet@linux.dev>2023-10-23 00:09:14 +0300
commitd17bc1739c5adaf9421cbc51b40e50da677c6b54 (patch)
treed794d98a223051d1f22536087b2aa2153c42d514 /fs/bcachefs/replicas.c
parent521b80676927df6b4ad4fc87b7756aad43b96d12 (diff)
downloadlinux-d17bc1739c5adaf9421cbc51b40e50da677c6b54.tar.xz
bcachefs: cached data shouldn't prevent fs from mounting
It's not an error if we don't have cached data - skip BCH_DATA_cached in bch2_have_enough_devs(). Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Diffstat (limited to 'fs/bcachefs/replicas.c')
-rw-r--r--fs/bcachefs/replicas.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/bcachefs/replicas.c b/fs/bcachefs/replicas.c
index 64fdf53a630a..57e093983dfc 100644
--- a/fs/bcachefs/replicas.c
+++ b/fs/bcachefs/replicas.c
@@ -1017,6 +1017,9 @@ bool bch2_have_enough_devs(struct bch_fs *c, struct bch_devs_mask devs,
unsigned i, nr_online = 0, nr_failed = 0, dflags = 0;
bool metadata = e->data_type < BCH_DATA_user;
+ if (e->data_type == BCH_DATA_cached)
+ continue;
+
for (i = 0; i < e->nr_devs; i++) {
struct bch_dev *ca = bch_dev_bkey_exists(c, e->devs[i]);