summaryrefslogtreecommitdiff
path: root/libbcachefs/extents.c
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2022-03-31 16:57:08 -0400
committerKent Overstreet <kent.overstreet@gmail.com>2022-03-31 16:57:08 -0400
commit70f2681838973f20a918b518f82d382b3556963d (patch)
tree6fe669df2e5cca41c4065bb717d0826250fa9219 /libbcachefs/extents.c
parentcc1b64e992b52d19b24cdc7677fc451c60d2c9d4 (diff)
Update bcachefs sources to 5e392aed7a bcachefs: Kill bch2_alloc_write()v0.20
Diffstat (limited to 'libbcachefs/extents.c')
-rw-r--r--libbcachefs/extents.c22
1 files changed, 14 insertions, 8 deletions
diff --git a/libbcachefs/extents.c b/libbcachefs/extents.c
index cc50e4b2..77a0d49a 100644
--- a/libbcachefs/extents.c
+++ b/libbcachefs/extents.c
@@ -954,15 +954,21 @@ void bch2_bkey_ptrs_to_text(struct printbuf *out, struct bch_fs *c,
switch (__extent_entry_type(entry)) {
case BCH_EXTENT_ENTRY_ptr:
ptr = entry_to_ptr(entry);
+ ca = c && ptr->dev < c->sb.nr_devices && c->devs[ptr->dev]
+ ? bch_dev_bkey_exists(c, ptr->dev)
+ : NULL;
+
+ if (!ca) {
+ pr_buf(out, "ptr: %u:%llu gen %u%s", ptr->dev,
+ (u64) ptr->offset, ptr->gen,
+ ptr->cached ? " cached" : "");
+ } else {
+ u32 offset;
+ u64 b = sector_to_bucket_and_offset(ca, ptr->offset, &offset);
- pr_buf(out, "ptr: %u:%llu gen %u%s", ptr->dev,
- (u64) ptr->offset, ptr->gen,
- ptr->cached ? " cached" : "");
-
- if (c) {
- ca = ptr->dev < c->sb.nr_devices && c->devs[ptr->dev]
- ? bch_dev_bkey_exists(c, ptr->dev)
- : NULL;
+ pr_buf(out, "ptr: %u:%llu:%u gen %u%s", ptr->dev,
+ b, offset, ptr->gen,
+ ptr->cached ? " cached" : "");
if (ca && ptr_stale(ca, ptr))
pr_buf(out, " stale");