summaryrefslogtreecommitdiff
path: root/libbcachefs/data_update.c
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@linux.dev>2025-08-03 21:33:32 -0400
committerKent Overstreet <kent.overstreet@linux.dev>2025-08-03 21:33:32 -0400
commitbf5ff08924a0ddf92b677d914523dae8a0a4cc0a (patch)
tree7e7c3b3784e5d6ce626bd6106881372d2cc4ea83 /libbcachefs/data_update.c
parent06e5ad9a7ef22dc21b9c243edf6b771624199398 (diff)
Update bcachefs sources to 933c0b52a810 bcachefs: error_throw counter
Diffstat (limited to 'libbcachefs/data_update.c')
-rw-r--r--libbcachefs/data_update.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/libbcachefs/data_update.c b/libbcachefs/data_update.c
index 01838a3a..0bd4dd06 100644
--- a/libbcachefs/data_update.c
+++ b/libbcachefs/data_update.c
@@ -693,6 +693,15 @@ int bch2_extent_drop_ptrs(struct btree_trans *trans,
if (ret)
return ret;
+ const union bch_extent_entry *entry;
+ struct extent_ptr_decoded p;
+ unsigned i = 0;
+ bkey_for_each_ptr_decode(k.k, bch2_bkey_ptrs_c(k), p, entry) {
+ if (data_opts->kill_ec_ptrs & BIT(i))
+ bch2_bkey_drop_ec(n, p.ptr.dev);
+ i++;
+ }
+
while (data_opts->kill_ptrs) {
unsigned i = 0, drop = __fls(data_opts->kill_ptrs);