]> git.sesse.net Git - bcachefs-tools-debian/blobdiff - libbcachefs/btree_gc.c
Update bcachefs sources to f70a3402188e bcachefs: Fix ca->oldest_gen allocation
[bcachefs-tools-debian] / libbcachefs / btree_gc.c
index fc5513a7719e516298c57d6f6b14cce178baf82e..475f8e8d9185da5f718c69a42ddddb7d9fd701c6 100644 (file)
@@ -1957,19 +1957,17 @@ int bch2_gc_gens(struct bch_fs *c)
        trans = bch2_trans_get(c);
 
        for_each_member_device(ca, c, i) {
-               struct bucket_gens *gens;
+               struct bucket_gens *gens = bucket_gens(ca);
 
                BUG_ON(ca->oldest_gen);
 
-               ca->oldest_gen = kvmalloc(ca->mi.nbuckets, GFP_KERNEL);
+               ca->oldest_gen = kvmalloc(gens->nbuckets, GFP_KERNEL);
                if (!ca->oldest_gen) {
                        percpu_ref_put(&ca->ref);
                        ret = -BCH_ERR_ENOMEM_gc_gens;
                        goto err;
                }
 
-               gens = bucket_gens(ca);
-
                for (b = gens->first_bucket;
                     b < gens->nbuckets; b++)
                        ca->oldest_gen[b] = gens->b[b];