mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-29 01:51:39 +00:00
Btrfs: Add inode map, and the start of file extent items
Signed-off-by: Chris Mason <chris.mason@oracle.com>
This commit is contained in:
parent
631d7d950a
commit
9f5fae2fe6
11 changed files with 541 additions and 172 deletions
|
@ -13,8 +13,8 @@ void btrfs_print_leaf(struct btrfs_root *root, struct btrfs_leaf *l)
|
|||
struct btrfs_extent_item *ei;
|
||||
struct btrfs_root_item *ri;
|
||||
struct btrfs_dir_item *di;
|
||||
struct btrfs_inode_map_item *mi;
|
||||
u32 type;
|
||||
u32 namelen;
|
||||
|
||||
printf("leaf %Lu total ptrs %d free space %d\n",
|
||||
btrfs_header_blocknr(&l->header), nr,
|
||||
|
@ -34,15 +34,13 @@ void btrfs_print_leaf(struct btrfs_root *root, struct btrfs_leaf *l)
|
|||
case BTRFS_INODE_ITEM_KEY:
|
||||
break;
|
||||
case BTRFS_DIR_ITEM_KEY:
|
||||
namelen = btrfs_item_size(l->items + i) - sizeof(*di);
|
||||
di = btrfs_item_ptr(l, i, struct btrfs_dir_item);
|
||||
printf("\t\tdir oid %Lu flags %u type %u\n",
|
||||
btrfs_dir_objectid(di),
|
||||
btrfs_dir_flags(di),
|
||||
btrfs_dir_type(di));
|
||||
printf("\t\tname %.*s\n",
|
||||
namelen, (char *)(di + 1));
|
||||
|
||||
btrfs_dir_name_len(di),(char *)(di + 1));
|
||||
break;
|
||||
case BTRFS_ROOT_ITEM_KEY:
|
||||
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)
|
|||
printf("\t\textent data refs %u owner %Lu\n",
|
||||
btrfs_extent_refs(ei), btrfs_extent_owner(ei));
|
||||
break;
|
||||
case BTRFS_INODE_MAP_ITEM_KEY:
|
||||
mi = btrfs_item_ptr(l, i, struct btrfs_inode_map_item);
|
||||
printf("\t\tinode map key %Lu %u %Lu\n",
|
||||
btrfs_disk_key_objectid(&mi->key),
|
||||
btrfs_disk_key_flags(&mi->key),
|
||||
btrfs_disk_key_offset(&mi->key));
|
||||
break;
|
||||
case BTRFS_STRING_ITEM_KEY:
|
||||
printf("\t\titem data %.*s\n", btrfs_item_size(item),
|
||||
btrfs_leaf_data(l) + btrfs_item_offset(item));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue