Lines Matching defs:split
1295 /* Node balancing for insertion. Here we only split or push nodes around
2021 * leaf and there's no need to split the leaf.
2112 * If @ins_len > 0, nodes and leaves will be split as we walk down the tree.
3090 * split the node at the specified level in path in two.
3091 * The path is corrected to point to the appropriate node after the split
3104 struct extent_buffer *split;
3114 * trying to split the root, lets make a new one
3140 split = btrfs_alloc_tree_block(trans, root, 0, root->root_key.objectid,
3143 if (IS_ERR(split))
3144 return PTR_ERR(split);
3149 ret = btrfs_tree_mod_log_eb_copy(split, c, 0, mid, c_nritems - mid);
3151 btrfs_tree_unlock(split);
3152 free_extent_buffer(split);
3156 copy_extent_buffer(split, c,
3157 btrfs_node_key_ptr_offset(split, 0),
3160 btrfs_set_header_nritems(split, c_nritems - mid);
3164 btrfs_mark_buffer_dirty(trans, split);
3166 ret = insert_ptr(trans, path, &disk_key, split->start,
3169 btrfs_tree_unlock(split);
3170 free_extent_buffer(split);
3178 path->nodes[level] = split;
3181 btrfs_tree_unlock(split);
3182 free_extent_buffer(split);
3646 * split the path's leaf in two, making sure there is at least data_size
3710 * of a leaf. A double split can leave us with 3 mostly empty leaves:
3715 * into the adjacent leaves. If all goes well we can avoid the double split
3773 * split the path's leaf in two, making sure there is at least data_size
3793 int split;
3836 split = 1;
3847 split = 0;
3855 split = 2;
3863 split = 0;
3873 split = 2;
3879 if (split == 0)
3886 * split, because we're only allowed to have MAX_LOCKDEP_SUBCLASSES
3901 if (split == 0) {
3947 if (split == 2) {
4102 * the split, the path is pointing to the old item. The
4105 * Note, the item being split must be smaller enough to live alone on
4108 * This allows us to split the item in place, keeping a lock on the
4467 * This allows us to split a file extent in place, keeping a lock on the leaf