summaryrefslogtreecommitdiff
path: root/print-tree.c
diff options
context:
space:
mode:
authorAlexander Block <ablock84@googlemail.com>2012-06-20 18:43:23 +0200
committerChris Mason <chris.mason@fusionio.com>2012-07-26 14:51:16 -0400
commit499316aeda6b6fbba556c03d24882099a64939a0 (patch)
treec05e78bf2ff2c35ee978b7a41ccde53db27e76db /print-tree.c
parent9cc8f761297647427641cdb1ad0ae84895812c4b (diff)
Btrfs-progs: print inode transid and dir item data field in debug-tree
Add printing of inode transid and dir item data field. Signed-off-by: Alexander Block <ablock84@googlemail.com>
Diffstat (limited to 'print-tree.c')
-rw-r--r--print-tree.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/print-tree.c b/print-tree.c
index face47a7..1d523096 100644
--- a/print-tree.c
+++ b/print-tree.c
@@ -48,6 +48,12 @@ static int print_dir_item(struct extent_buffer *eb, struct btrfs_item *item,
read_extent_buffer(eb, namebuf, (unsigned long)(di + 1), len);
printf("\t\tnamelen %u datalen %u name: %.*s\n",
name_len, data_len, len, namebuf);
+ if (data_len) {
+ len = (data_len <= sizeof(namebuf))? data_len: sizeof(namebuf);
+ read_extent_buffer(eb, namebuf,
+ (unsigned long)(di + 1) + name_len, len);
+ printf("\t\tdata %.*s\n", len, namebuf);
+ }
len = sizeof(*di) + name_len + data_len;
di = (struct btrfs_dir_item *)((char *)di + len);
cur += len;
@@ -515,8 +521,9 @@ void btrfs_print_leaf(struct btrfs_root *root, struct extent_buffer *l)
switch (type) {
case BTRFS_INODE_ITEM_KEY:
ii = btrfs_item_ptr(l, i, struct btrfs_inode_item);
- printf("\t\tinode generation %llu size %llu block group %llu mode %o links %u\n",
+ printf("\t\tinode generation %llu transid %llu size %llu block group %llu mode %o links %u\n",
(unsigned long long)btrfs_inode_generation(l, ii),
+ (unsigned long long)btrfs_inode_transid(l, ii),
(unsigned long long)btrfs_inode_size(l, ii),
(unsigned long long)btrfs_inode_block_group(l,ii),
btrfs_inode_mode(l, ii),