aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/print-tree.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/btrfs/print-tree.c')
-rw-r--r--fs/btrfs/print-tree.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/fs/btrfs/print-tree.c b/fs/btrfs/print-tree.c
index 0bb5c38427c9..f250e5fad773 100644
--- a/fs/btrfs/print-tree.c
+++ b/fs/btrfs/print-tree.c
@@ -13,8 +13,8 @@ void btrfs_print_leaf(struct btrfs_root *root, struct btrfs_leaf *l)
13 struct btrfs_extent_item *ei; 13 struct btrfs_extent_item *ei;
14 struct btrfs_root_item *ri; 14 struct btrfs_root_item *ri;
15 struct btrfs_dir_item *di; 15 struct btrfs_dir_item *di;
16 struct btrfs_inode_map_item *mi;
16 u32 type; 17 u32 type;
17 u32 namelen;
18 18
19 printf("leaf %Lu total ptrs %d free space %d\n", 19 printf("leaf %Lu total ptrs %d free space %d\n",
20 btrfs_header_blocknr(&l->header), nr, 20 btrfs_header_blocknr(&l->header), nr,
@@ -34,15 +34,13 @@ void btrfs_print_leaf(struct btrfs_root *root, struct btrfs_leaf *l)
34 case BTRFS_INODE_ITEM_KEY: 34 case BTRFS_INODE_ITEM_KEY:
35 break; 35 break;
36 case BTRFS_DIR_ITEM_KEY: 36 case BTRFS_DIR_ITEM_KEY:
37 namelen = btrfs_item_size(l->items + i) - sizeof(*di);
38 di = btrfs_item_ptr(l, i, struct btrfs_dir_item); 37 di = btrfs_item_ptr(l, i, struct btrfs_dir_item);
39 printf("\t\tdir oid %Lu flags %u type %u\n", 38 printf("\t\tdir oid %Lu flags %u type %u\n",
40 btrfs_dir_objectid(di), 39 btrfs_dir_objectid(di),
41 btrfs_dir_flags(di), 40 btrfs_dir_flags(di),
42 btrfs_dir_type(di)); 41 btrfs_dir_type(di));
43 printf("\t\tname %.*s\n", 42 printf("\t\tname %.*s\n",
44 namelen, (char *)(di + 1)); 43 btrfs_dir_name_len(di),(char *)(di + 1));
45
46 break; 44 break;
47 case BTRFS_ROOT_ITEM_KEY: 45 case BTRFS_ROOT_ITEM_KEY:
48 ri = btrfs_item_ptr(l, i, struct btrfs_root_item); 46 ri = btrfs_item_ptr(l, i, struct btrfs_root_item);
@@ -54,6 +52,13 @@ void btrfs_print_leaf(struct btrfs_root *root, struct btrfs_leaf *l)
54 printf("\t\textent data refs %u owner %Lu\n", 52 printf("\t\textent data refs %u owner %Lu\n",
55 btrfs_extent_refs(ei), btrfs_extent_owner(ei)); 53 btrfs_extent_refs(ei), btrfs_extent_owner(ei));
56 break; 54 break;
55 case BTRFS_INODE_MAP_ITEM_KEY:
56 mi = btrfs_item_ptr(l, i, struct btrfs_inode_map_item);
57 printf("\t\tinode map key %Lu %u %Lu\n",
58 btrfs_disk_key_objectid(&mi->key),
59 btrfs_disk_key_flags(&mi->key),
60 btrfs_disk_key_offset(&mi->key));
61 break;
57 case BTRFS_STRING_ITEM_KEY: 62 case BTRFS_STRING_ITEM_KEY:
58 printf("\t\titem data %.*s\n", btrfs_item_size(item), 63 printf("\t\titem data %.*s\n", btrfs_item_size(item),
59 btrfs_leaf_data(l) + btrfs_item_offset(item)); 64 btrfs_leaf_data(l) + btrfs_item_offset(item));