aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@linux.dev>2023-11-29 22:42:52 -0500
committerKent Overstreet <kent.overstreet@linux.dev>2023-11-29 22:42:52 -0500
commit3bd4653767bb5eadd253e382fe8503ceb6bef5d1 (patch)
tree3a22134b04809f62f0c7a74b67529aa9c6bc47a7
parent46d51608693bddac162232133516e975f3b1e835 (diff)
downloadbcachefs-tools-3bd4653767bb5eadd253e382fe8503ceb6bef5d1.tar.gz
Update bcachefs sources to 676dd269f0f8 mean and variance: Promote to lib/math
-rw-r--r--.bcachefs_revision2
-rw-r--r--libbcachefs/backpointers.c2
-rw-r--r--libbcachefs/movinggc.c16
3 files changed, 15 insertions, 5 deletions
diff --git a/.bcachefs_revision b/.bcachefs_revision
index d9447c3f..9acffb57 100644
--- a/.bcachefs_revision
+++ b/.bcachefs_revision
@@ -1 +1 @@
-eb83f1f842bb95e1f61489b48854240777368763
+676dd269f0f8d59f730ba8e96474448576e4f677
diff --git a/libbcachefs/backpointers.c b/libbcachefs/backpointers.c
index 2f194f86..2fb96fa9 100644
--- a/libbcachefs/backpointers.c
+++ b/libbcachefs/backpointers.c
@@ -651,6 +651,8 @@ static int bch2_check_extents_to_backpointers_pass(struct btree_trans *trans,
}
if (ret)
break;
+ if (bpos_eq(iter.pos, SPOS_MAX))
+ break;
bch2_btree_iter_advance(&iter);
}
bch2_trans_iter_exit(trans, &iter);
diff --git a/libbcachefs/movinggc.c b/libbcachefs/movinggc.c
index 7155e206..fd239a26 100644
--- a/libbcachefs/movinggc.c
+++ b/libbcachefs/movinggc.c
@@ -170,15 +170,23 @@ static int bch2_copygc_get_buckets(struct moving_context *ctxt,
saw++;
- if (!bch2_bucket_is_movable(trans, &b, lru_pos_time(k.k->p)))
+ ret2 = bch2_bucket_is_movable(trans, &b, lru_pos_time(k.k->p));
+ if (ret2 < 0)
+ goto err;
+
+ if (!ret2)
not_movable++;
else if (bucket_in_flight(buckets_in_flight, b.k))
in_flight++;
else {
- ret2 = darray_push(buckets, b) ?: buckets->nr >= nr_to_get;
- if (ret2 >= 0)
- sectors += b.sectors;
+ ret2 = darray_push(buckets, b);
+ if (ret2)
+ goto err;
+ sectors += b.sectors;
}
+
+ ret2 = buckets->nr >= nr_to_get;
+err:
ret2;
}));