summaryrefslogtreecommitdiff
path: root/libbcachefs
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@linux.dev>2025-05-07 15:52:29 -0400
committerKent Overstreet <kent.overstreet@linux.dev>2025-06-13 23:30:24 -0400
commite2b9e8a00625cefd0ec753a18df7b970b90aff8a (patch)
tree2894fb341f97a46a7e531e473814bcc45d667c39 /libbcachefs
parent7c680c6eff3a8877e9effdb2766982abbea99f2a (diff)
Diffstat (limited to 'libbcachefs')
-rw-r--r--libbcachefs/journal_io.c4
-rw-r--r--libbcachefs/super.c5
2 files changed, 7 insertions, 2 deletions
diff --git a/libbcachefs/journal_io.c b/libbcachefs/journal_io.c
index 0b15d71a..1942becb 100644
--- a/libbcachefs/journal_io.c
+++ b/libbcachefs/journal_io.c
@@ -1557,8 +1557,10 @@ static void __journal_write_alloc(struct journal *j,
darray_for_each(*devs, i) {
struct bch_dev *ca = bch2_dev_get_ioref(c, *i, WRITE,
BCH_DEV_WRITE_REF_journal_write);
- if (!ca)
+ if (!ca) {
+ BUG();
continue;
+ }
struct journal_device *ja = &ca->journal;
diff --git a/libbcachefs/super.c b/libbcachefs/super.c
index 61ef897c..a3c9a42b 100644
--- a/libbcachefs/super.c
+++ b/libbcachefs/super.c
@@ -497,11 +497,13 @@ static int __bch2_fs_read_write(struct bch_fs *c, bool early)
clear_bit(BCH_FS_clean_shutdown, &c->flags);
scoped_guard(rcu)
- for_each_online_member_rcu(c, ca)
+ for_each_online_member_rcu(c, ca) {
+ pr_info("dev %u state %u", ca->dev_idx, ca->mi.state);
if (ca->mi.state == BCH_MEMBER_STATE_rw) {
bch2_dev_allocator_add(c, ca);
enumerated_ref_start(&ca->io_ref[WRITE]);
}
+ }
bch2_recalc_capacity(c);
@@ -1954,6 +1956,7 @@ int bch2_dev_add(struct bch_fs *c, const char *path)
ca->disk_sb.sb->dev_idx = dev_idx;
bch2_dev_attach(c, ca, dev_idx);
+ set_bit(ca->dev_idx, c->online_devs.d);
if (BCH_MEMBER_GROUP(&dev_mi)) {
ret = __bch2_dev_group_set(c, ca, label.buf);