bcachefs: kill replicas_sectors arg to __trigger_extent()
authorKent Overstreet <kent.overstreet@linux.dev>
Mon, 26 May 2025 18:15:28 +0000 (14:15 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Fri, 30 May 2025 05:21:13 +0000 (01:21 -0400)
Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/buckets.c

index 492a368..b9e92bd 100644 (file)
@@ -740,8 +740,7 @@ err:
 static int __trigger_extent(struct btree_trans *trans,
                            enum btree_id btree_id, unsigned level,
                            struct bkey_s_c k,
-                           enum btree_iter_update_trigger_flags flags,
-                           s64 *replicas_sectors)
+                           enum btree_iter_update_trigger_flags flags)
 {
        bool gc = flags & BTREE_TRIGGER_gc;
        struct bkey_ptrs_c ptrs = bch2_bkey_ptrs_c(k);
@@ -752,6 +751,8 @@ static int __trigger_extent(struct btree_trans *trans,
                : BCH_DATA_user;
        int ret = 0;
 
+       s64 replicas_sectors = 0;
+
        struct disk_accounting_pos acc_replicas_key;
        memset(&acc_replicas_key, 0, sizeof(acc_replicas_key));
        acc_replicas_key.type = BCH_DISK_ACCOUNTING_replicas;
@@ -778,7 +779,7 @@ static int __trigger_extent(struct btree_trans *trans,
                        if (ret)
                                return ret;
                } else if (!p.has_ec) {
-                       *replicas_sectors       += disk_sectors;
+                       replicas_sectors       += disk_sectors;
                        replicas_entry_add_dev(&acc_replicas_key.replicas, p.ptr.dev);
                } else {
                        ret = bch2_trigger_stripe_ptr(trans, k, p, data_type, disk_sectors, flags);
@@ -816,13 +817,13 @@ static int __trigger_extent(struct btree_trans *trans,
        }
 
        if (acc_replicas_key.replicas.nr_devs) {
-               ret = bch2_disk_accounting_mod(trans, &acc_replicas_key, replicas_sectors, 1, gc);
+               ret = bch2_disk_accounting_mod(trans, &acc_replicas_key, &replicas_sectors, 1, gc);
                if (ret)
                        return ret;
        }
 
        if (acc_replicas_key.replicas.nr_devs && !level && k.k->p.snapshot) {
-               ret = bch2_disk_accounting_mod2_nr(trans, gc, replicas_sectors, 1, snapshot, k.k->p.snapshot);
+               ret = bch2_disk_accounting_mod2_nr(trans, gc, &replicas_sectors, 1, snapshot, k.k->p.snapshot);
                if (ret)
                        return ret;
        }
@@ -838,7 +839,7 @@ static int __trigger_extent(struct btree_trans *trans,
        }
 
        if (level) {
-               ret = bch2_disk_accounting_mod2_nr(trans, gc, replicas_sectors, 1, btree, btree_id);
+               ret = bch2_disk_accounting_mod2_nr(trans, gc, &replicas_sectors, 1, btree, btree_id);
                if (ret)
                        return ret;
        } else {
@@ -847,7 +848,7 @@ static int __trigger_extent(struct btree_trans *trans,
                s64 v[3] = {
                        insert ? 1 : -1,
                        insert ? k.k->size : -((s64) k.k->size),
-                       *replicas_sectors,
+                       replicas_sectors,
                };
                ret = bch2_disk_accounting_mod2(trans, gc, v, inum, k.k->p.inode);
                if (ret)
@@ -879,20 +880,16 @@ int bch2_trigger_extent(struct btree_trans *trans,
                return 0;
 
        if (flags & (BTREE_TRIGGER_transactional|BTREE_TRIGGER_gc)) {
-               s64 old_replicas_sectors = 0, new_replicas_sectors = 0;
-
                if (old.k->type) {
                        int ret = __trigger_extent(trans, btree, level, old,
-                                                  flags & ~BTREE_TRIGGER_insert,
-                                                  &old_replicas_sectors);
+                                                  flags & ~BTREE_TRIGGER_insert);
                        if (ret)
                                return ret;
                }
 
                if (new.k->type) {
                        int ret = __trigger_extent(trans, btree, level, new.s_c,
-                                                  flags & ~BTREE_TRIGGER_overwrite,
-                                                  &new_replicas_sectors);
+                                                  flags & ~BTREE_TRIGGER_overwrite);
                        if (ret)
                                return ret;
                }