Lines Matching refs:node

49 			       struct btrfs_delayed_ref_node *node,
59 struct btrfs_delayed_ref_node *node,
500 struct btrfs_delayed_ref_node *node, in insert_extent_data_ref() argument
506 u64 owner = btrfs_delayed_ref_owner(node); in insert_extent_data_ref()
507 u64 offset = btrfs_delayed_ref_offset(node); in insert_extent_data_ref()
513 if (node->parent) { in insert_extent_data_ref()
515 key.offset = node->parent; in insert_extent_data_ref()
519 key.offset = hash_extent_data_ref(node->ref_root, owner, offset); in insert_extent_data_ref()
528 if (node->parent) { in insert_extent_data_ref()
533 btrfs_set_shared_data_ref_count(leaf, ref, node->ref_mod); in insert_extent_data_ref()
536 num_refs += node->ref_mod; in insert_extent_data_ref()
544 if (match_extent_data_ref(leaf, ref, node->ref_root, in insert_extent_data_ref()
559 btrfs_set_extent_data_ref_root(leaf, ref, node->ref_root); in insert_extent_data_ref()
562 btrfs_set_extent_data_ref_count(leaf, ref, node->ref_mod); in insert_extent_data_ref()
565 num_refs += node->ref_mod; in insert_extent_data_ref()
687 struct btrfs_delayed_ref_node *node, in insert_tree_block_ref() argument
695 if (node->parent) { in insert_tree_block_ref()
697 key.offset = node->parent; in insert_tree_block_ref()
700 key.offset = node->ref_root; in insert_tree_block_ref()
1483 struct btrfs_delayed_ref_node *node, in __btrfs_inc_extent_ref() argument
1490 u64 bytenr = node->bytenr; in __btrfs_inc_extent_ref()
1491 u64 num_bytes = node->num_bytes; in __btrfs_inc_extent_ref()
1492 u64 owner = btrfs_delayed_ref_owner(node); in __btrfs_inc_extent_ref()
1493 u64 offset = btrfs_delayed_ref_offset(node); in __btrfs_inc_extent_ref()
1495 int refs_to_add = node->ref_mod; in __btrfs_inc_extent_ref()
1504 node->parent, node->ref_root, owner, in __btrfs_inc_extent_ref()
1526 ret = insert_tree_block_ref(trans, path, node, bytenr); in __btrfs_inc_extent_ref()
1528 ret = insert_extent_data_ref(trans, path, node, bytenr); in __btrfs_inc_extent_ref()
1555 struct btrfs_delayed_ref_node *node, in run_delayed_data_ref() argument
1563 trace_run_delayed_data_ref(trans->fs_info, node); in run_delayed_data_ref()
1565 if (node->type == BTRFS_SHARED_DATA_REF_KEY) in run_delayed_data_ref()
1566 parent = node->parent; in run_delayed_data_ref()
1568 if (node->action == BTRFS_ADD_DELAYED_REF && insert_reserved) { in run_delayed_data_ref()
1572 .num_bytes = node->num_bytes, in run_delayed_data_ref()
1577 u64 owner = btrfs_delayed_ref_owner(node); in run_delayed_data_ref()
1578 u64 offset = btrfs_delayed_ref_offset(node); in run_delayed_data_ref()
1583 key.objectid = node->bytenr; in run_delayed_data_ref()
1585 key.offset = node->num_bytes; in run_delayed_data_ref()
1587 ret = alloc_reserved_file_extent(trans, parent, node->ref_root, in run_delayed_data_ref()
1589 node->ref_mod, in run_delayed_data_ref()
1594 } else if (node->action == BTRFS_ADD_DELAYED_REF) { in run_delayed_data_ref()
1595 ret = __btrfs_inc_extent_ref(trans, node, extent_op); in run_delayed_data_ref()
1596 } else if (node->action == BTRFS_DROP_DELAYED_REF) { in run_delayed_data_ref()
1597 ret = __btrfs_free_extent(trans, href, node, extent_op); in run_delayed_data_ref()
1710 struct btrfs_delayed_ref_node *node, in run_delayed_tree_ref() argument
1719 trace_run_delayed_tree_ref(trans->fs_info, node); in run_delayed_tree_ref()
1721 if (node->type == BTRFS_SHARED_BLOCK_REF_KEY) in run_delayed_tree_ref()
1722 parent = node->parent; in run_delayed_tree_ref()
1723 ref_root = node->ref_root; in run_delayed_tree_ref()
1725 if (unlikely(node->ref_mod != 1)) { in run_delayed_tree_ref()
1728 node->bytenr, node->ref_mod, node->action, ref_root, in run_delayed_tree_ref()
1732 if (node->action == BTRFS_ADD_DELAYED_REF && insert_reserved) { in run_delayed_tree_ref()
1741 ret = alloc_reserved_tree_block(trans, node, extent_op); in run_delayed_tree_ref()
1744 } else if (node->action == BTRFS_ADD_DELAYED_REF) { in run_delayed_tree_ref()
1745 ret = __btrfs_inc_extent_ref(trans, node, extent_op); in run_delayed_tree_ref()
1746 } else if (node->action == BTRFS_DROP_DELAYED_REF) { in run_delayed_tree_ref()
1747 ret = __btrfs_free_extent(trans, href, node, extent_op); in run_delayed_tree_ref()
1757 struct btrfs_delayed_ref_node *node, in run_one_delayed_ref() argument
1765 btrfs_pin_extent(trans, node->bytenr, node->num_bytes, 1); in run_one_delayed_ref()
1771 if (node->type == BTRFS_TREE_BLOCK_REF_KEY || in run_one_delayed_ref()
1772 node->type == BTRFS_SHARED_BLOCK_REF_KEY) in run_one_delayed_ref()
1773 ret = run_delayed_tree_ref(trans, href, node, extent_op, in run_one_delayed_ref()
1775 else if (node->type == BTRFS_EXTENT_DATA_REF_KEY || in run_one_delayed_ref()
1776 node->type == BTRFS_SHARED_DATA_REF_KEY) in run_one_delayed_ref()
1777 ret = run_delayed_data_ref(trans, href, node, extent_op, in run_one_delayed_ref()
1779 else if (node->type == BTRFS_EXTENT_OWNER_REF_KEY) in run_one_delayed_ref()
1784 btrfs_pin_extent(trans, node->bytenr, node->num_bytes, 1); in run_one_delayed_ref()
1788 node->bytenr, node->num_bytes, node->type, in run_one_delayed_ref()
1789 node->action, node->ref_mod, ret); in run_one_delayed_ref()
2205 struct rb_node *node; in check_delayed_ref() local
2254 for (node = rb_first_cached(&head->ref_tree); node; in check_delayed_ref()
2255 node = rb_next(node)) { in check_delayed_ref()
2259 ref = rb_entry(node, struct btrfs_delayed_ref_node, ref_node); in check_delayed_ref()
3052 struct btrfs_delayed_ref_node *node, in __btrfs_free_extent() argument
3067 int refs_to_drop = node->ref_mod; in __btrfs_free_extent()
3070 u64 bytenr = node->bytenr; in __btrfs_free_extent()
3071 u64 num_bytes = node->num_bytes; in __btrfs_free_extent()
3072 u64 owner_objectid = btrfs_delayed_ref_owner(node); in __btrfs_free_extent()
3073 u64 owner_offset = btrfs_delayed_ref_offset(node); in __btrfs_free_extent()
3089 node->bytenr, refs_to_drop); in __btrfs_free_extent()
3099 node->parent, node->ref_root, owner_objectid, in __btrfs_free_extent()
3201 bytenr, node->parent, node->ref_root, owner_objectid, in __btrfs_free_extent()
4838 struct btrfs_delayed_ref_node *node, in alloc_reserved_tree_block() argument
4853 int level = btrfs_delayed_ref_owner(node); in alloc_reserved_tree_block()
4856 extent_key.objectid = node->bytenr; in alloc_reserved_tree_block()
4862 extent_key.offset = node->num_bytes; in alloc_reserved_tree_block()
4896 if (node->type == BTRFS_SHARED_BLOCK_REF_KEY) { in alloc_reserved_tree_block()
4899 btrfs_set_extent_inline_ref_offset(leaf, iref, node->parent); in alloc_reserved_tree_block()
4903 btrfs_set_extent_inline_ref_offset(leaf, iref, node->ref_root); in alloc_reserved_tree_block()
4908 return alloc_reserved_extent(trans, node->bytenr, fs_info->nodesize); in alloc_reserved_tree_block()
5862 if (eb == root->node) { in walk_up_proc()
6068 level = btrfs_header_level(root->node); in btrfs_drop_snapshot()
6096 level = btrfs_header_level(root->node); in btrfs_drop_snapshot()
6284 struct extent_buffer *node, in btrfs_drop_subtree() argument
6310 btrfs_assert_tree_write_locked(node); in btrfs_drop_subtree()
6311 level = btrfs_header_level(node); in btrfs_drop_subtree()
6312 path->nodes[level] = node; in btrfs_drop_subtree()