Signed-off-by: Kent Overstreet <[email protected]>
---
fs/bcachefs/backpointers.h | 18 +++---------------
fs/bcachefs/buckets.c | 7 +++----
2 files changed, 6 insertions(+), 19 deletions(-)
diff --git a/fs/bcachefs/backpointers.h b/fs/bcachefs/backpointers.h
index d8a15f5fa767..4b7758a82eb4 100644
--- a/fs/bcachefs/backpointers.h
+++ b/fs/bcachefs/backpointers.h
@@ -139,12 +139,11 @@ static inline enum bch_data_type
bch2_bkey_ptr_data_type(struct bkey_s_c k,
}
}
-static inline void __bch2_extent_ptr_to_bp(struct bch_fs *c, struct bch_dev
*ca,
+static inline void bch2_extent_ptr_to_bp(struct bch_fs *c, struct bch_dev *ca,
enum btree_id btree_id, unsigned level,
struct bkey_s_c k, struct extent_ptr_decoded p,
const union bch_extent_entry *entry,
- struct bpos *bucket, struct bkey_i_backpointer *bp,
- u64 sectors)
+ struct bpos *bucket, struct bkey_i_backpointer *bp)
{
u32 bucket_offset;
*bucket = PTR_BUCKET_POS_OFFSET(ca, &p.ptr, &bucket_offset);
@@ -158,22 +157,11 @@ static inline void __bch2_extent_ptr_to_bp(struct bch_fs
*c, struct bch_dev *ca,
.level = level,
.data_type = bch2_bkey_ptr_data_type(k, p, entry),
.bucket_offset = bp_bucket_offset,
- .bucket_len = sectors,
+ .bucket_len = ptr_disk_sectors(level ? btree_sectors(c) :
k.k->size, p),
.pos = k.k->p,
};
}
-static inline void bch2_extent_ptr_to_bp(struct bch_fs *c, struct bch_dev *ca,
- enum btree_id btree_id, unsigned level,
- struct bkey_s_c k, struct extent_ptr_decoded p,
- const union bch_extent_entry *entry,
- struct bpos *bucket_pos, struct bkey_i_backpointer
*bp)
-{
- u64 sectors = ptr_disk_sectors(level ? btree_sectors(c) : k.k->size, p);
-
- __bch2_extent_ptr_to_bp(c, ca, btree_id, level, k, p, entry,
bucket_pos, bp, sectors);
-}
-
struct bkey_s_c bch2_backpointer_get_key(struct btree_trans *, struct
bkey_s_c_backpointer,
struct btree_iter *, unsigned);
struct btree *bch2_backpointer_get_node(struct btree_trans *, struct
bkey_s_c_backpointer,
diff --git a/fs/bcachefs/buckets.c b/fs/bcachefs/buckets.c
index 1547141ba2a0..81a217587413 100644
--- a/fs/bcachefs/buckets.c
+++ b/fs/bcachefs/buckets.c
@@ -574,9 +574,6 @@ static int bch2_trigger_pointer(struct btree_trans *trans,
struct printbuf buf = PRINTBUF;
int ret = 0;
- u64 abs_sectors = ptr_disk_sectors(level ? btree_sectors(c) :
k.k->size, p);
- *sectors = insert ? abs_sectors : -abs_sectors;
-
struct bch_dev *ca = bch2_dev_tryget(c, p.ptr.dev);
if (unlikely(!ca)) {
if (insert && p.ptr.dev != BCH_SB_MEMBER_INVALID)
@@ -586,7 +583,9 @@ static int bch2_trigger_pointer(struct btree_trans *trans,
struct bpos bucket;
struct bkey_i_backpointer bp;
- __bch2_extent_ptr_to_bp(trans->c, ca, btree_id, level, k, p, entry,
&bucket, &bp, abs_sectors);
+ bch2_extent_ptr_to_bp(trans->c, ca, btree_id, level, k, p, entry,
&bucket, &bp);
+
+ *sectors = insert ? bp.v.bucket_len : -(s64) bp.v.bucket_len;
if (flags & BTREE_TRIGGER_transactional) {
struct bkey_i_alloc_v4 *a =
bch2_trans_start_alloc_update(trans, bucket, 0);
--
2.45.2