]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - libbcachefs/sb-clean.c
Update bcachefs sources to eb83f1f842bb mean and variance: Promote to lib/math
[bcachefs-tools-debian] / libbcachefs / sb-clean.c
index 61203d7c8d36054400ff0d1ee2e1838966168a73..8dc0e3db1f03ebaa88df4b2e336671a089879a1e 100644 (file)
@@ -82,6 +82,7 @@ int bch2_verify_superblock_clean(struct bch_fs *c,
        int ret = 0;
 
        if (mustfix_fsck_err_on(j->seq != clean->journal_seq, c,
+                       sb_clean_journal_seq_mismatch,
                        "superblock journal seq (%llu) doesn't match journal (%llu) after clean shutdown",
                        le64_to_cpu(clean->journal_seq),
                        le64_to_cpu(j->seq))) {
@@ -119,6 +120,7 @@ int bch2_verify_superblock_clean(struct bch_fs *c,
                                    k1->k.u64s != k2->k.u64s ||
                                    memcmp(k1, k2, bkey_bytes(&k1->k)) ||
                                    l1 != l2, c,
+                       sb_clean_btree_root_mismatch,
                        "superblock btree root %u doesn't match journal after clean shutdown\n"
                        "sb:      l=%u %s\n"
                        "journal: l=%u %s\n", i,
@@ -140,6 +142,7 @@ struct bch_sb_field_clean *bch2_read_superblock_clean(struct bch_fs *c)
        sb_clean = bch2_sb_field_get(c->disk_sb.sb, clean);
 
        if (fsck_err_on(!sb_clean, c,
+                       sb_clean_missing,
                        "superblock marked clean but clean section not present")) {
                SET_BCH_SB_CLEAN(c->disk_sb.sb, false);
                c->sb.clean = false;
@@ -232,7 +235,7 @@ void bch2_journal_super_entries_add_common(struct bch_fs *c,
        }
 
        for (i = 0; i < c->replicas.nr; i++) {
-               struct bch_replicas_entry *e =
+               struct bch_replicas_entry_v1 *e =
                        cpu_replicas_entry(&c->replicas, i);
                struct jset_entry_data_usage *u =
                        container_of(jset_entry_init(end, sizeof(*u) + e->nr_devs),
@@ -253,7 +256,6 @@ void bch2_journal_super_entries_add_common(struct bch_fs *c,
 
                u->entry.type = BCH_JSET_ENTRY_dev_usage;
                u->dev = cpu_to_le32(dev);
-               u->buckets_ec           = cpu_to_le64(ca->usage_base->buckets_ec);
 
                for (i = 0; i < BCH_DATA_NR; i++) {
                        u->d[i].buckets = cpu_to_le64(ca->usage_base->d[i].buckets);
@@ -373,7 +375,7 @@ void bch2_fs_mark_clean(struct bch_fs *c)
 
        entry = sb_clean->start;
        bch2_journal_super_entries_add_common(c, &entry, 0);
-       entry = bch2_btree_roots_to_journal_entries(c, entry, entry);
+       entry = bch2_btree_roots_to_journal_entries(c, entry, 0);
        BUG_ON((void *) entry > vstruct_end(&sb_clean->field));
 
        memset(entry, 0,