• Home
  • Raw
  • Download

Lines Matching refs:slot

42 		    int level, int slot);
318 int slot; member
516 alloc_tree_mod_elem(struct extent_buffer *eb, int slot, in alloc_tree_mod_elem() argument
527 btrfs_node_key(eb, &tm->key, slot); in alloc_tree_mod_elem()
528 tm->blockptr = btrfs_node_blockptr(eb, slot); in alloc_tree_mod_elem()
531 tm->slot = slot; in alloc_tree_mod_elem()
532 tm->generation = btrfs_node_ptr_generation(eb, slot); in alloc_tree_mod_elem()
540 struct extent_buffer *eb, int slot, in tree_mod_log_insert_key() argument
549 tm = alloc_tree_mod_elem(eb, slot, op, flags); in tree_mod_log_insert_key()
591 tm->slot = src_slot; in tree_mod_log_insert_move()
881 struct extent_buffer *eb, int slot, int atomic) in tree_mod_log_set_node_key() argument
885 ret = tree_mod_log_insert_key(fs_info, eb, slot, in tree_mod_log_set_node_key()
1283 BUG_ON(tm->slot < n); in __tree_mod_log_rewind()
1287 btrfs_set_node_key(eb, &tm->key, tm->slot); in __tree_mod_log_rewind()
1288 btrfs_set_node_blockptr(eb, tm->slot, tm->blockptr); in __tree_mod_log_rewind()
1289 btrfs_set_node_ptr_generation(eb, tm->slot, in __tree_mod_log_rewind()
1294 BUG_ON(tm->slot >= n); in __tree_mod_log_rewind()
1295 btrfs_set_node_key(eb, &tm->key, tm->slot); in __tree_mod_log_rewind()
1296 btrfs_set_node_blockptr(eb, tm->slot, tm->blockptr); in __tree_mod_log_rewind()
1297 btrfs_set_node_ptr_generation(eb, tm->slot, in __tree_mod_log_rewind()
1305 o_dst = btrfs_node_key_ptr_offset(tm->slot); in __tree_mod_log_rewind()
1361 BUG_ON(tm->slot != 0); in tree_mod_log_rewind()
1732 int max, int *slot) in generic_bin_search() argument
1788 *slot = mid; in generic_bin_search()
1792 *slot = low; in generic_bin_search()
1801 int level, int *slot) in bin_search() argument
1808 slot); in bin_search()
1814 slot); in bin_search()
1818 int level, int *slot) in btrfs_bin_search() argument
1820 return bin_search(eb, key, level, slot); in btrfs_bin_search()
1843 struct extent_buffer *parent, int slot) in read_node_slot() argument
1848 if (slot < 0 || slot >= btrfs_header_nritems(parent)) in read_node_slot()
1853 eb = read_tree_block(root, btrfs_node_blockptr(parent, slot), in read_node_slot()
1854 btrfs_node_ptr_generation(parent, slot)); in read_node_slot()
2235 int level, int slot, u64 objectid) in reada_for_search() argument
2256 search = btrfs_node_blockptr(node, slot); in reada_for_search()
2267 nr = slot; in reada_for_search()
2299 int slot; in reada_for_balance() local
2312 slot = path->slots[level + 1]; in reada_for_balance()
2314 if (slot > 0) { in reada_for_balance()
2315 block1 = btrfs_node_blockptr(parent, slot - 1); in reada_for_balance()
2316 gen = btrfs_node_ptr_generation(parent, slot - 1); in reada_for_balance()
2327 if (slot + 1 < nritems) { in reada_for_balance()
2328 block2 = btrfs_node_blockptr(parent, slot + 1); in reada_for_balance()
2329 gen = btrfs_node_ptr_generation(parent, slot + 1); in reada_for_balance()
2436 struct extent_buffer **eb_ret, int level, int slot, in read_block_for_search() argument
2445 blocknr = btrfs_node_blockptr(b, slot); in read_block_for_search()
2446 gen = btrfs_node_ptr_generation(b, slot); in read_block_for_search()
2487 reada_for_search(root, p, level, slot, key->objectid); in read_block_for_search()
2601 int level, int *prev_cmp, int *slot) in key_search() argument
2604 *prev_cmp = bin_search(b, key, level, slot); in key_search()
2609 *slot = 0; in key_search()
2667 int slot; in btrfs_search_slot() local
2819 ret = key_search(b, key, level, &prev_cmp, &slot); in btrfs_search_slot()
2825 if (ret && slot > 0) { in btrfs_search_slot()
2827 slot -= 1; in btrfs_search_slot()
2829 p->slots[level] = slot; in btrfs_search_slot()
2839 slot = p->slots[level]; in btrfs_search_slot()
2847 if (slot == 0 && ins_len && in btrfs_search_slot()
2864 &b, level, slot, key, 0); in btrfs_search_slot()
2896 p->slots[level] = slot; in btrfs_search_slot()
2950 int slot; in btrfs_search_old_slot() local
2989 ret = key_search(b, key, level, &prev_cmp, &slot); in btrfs_search_old_slot()
2993 if (ret && slot > 0) { in btrfs_search_old_slot()
2995 slot -= 1; in btrfs_search_old_slot()
2997 p->slots[level] = slot; in btrfs_search_old_slot()
3007 slot, key, time_seq); in btrfs_search_old_slot()
3031 p->slots[level] = slot; in btrfs_search_old_slot()
3162 int slot; in btrfs_set_item_key_safe() local
3165 slot = path->slots[0]; in btrfs_set_item_key_safe()
3166 if (slot > 0) { in btrfs_set_item_key_safe()
3167 btrfs_item_key(eb, &disk_key, slot - 1); in btrfs_set_item_key_safe()
3170 if (slot < btrfs_header_nritems(eb) - 1) { in btrfs_set_item_key_safe()
3171 btrfs_item_key(eb, &disk_key, slot + 1); in btrfs_set_item_key_safe()
3176 btrfs_set_item_key(eb, &disk_key, slot); in btrfs_set_item_key_safe()
3178 if (slot == 0) in btrfs_set_item_key_safe()
3401 int slot, int level) in insert_ptr() argument
3411 BUG_ON(slot > nritems); in insert_ptr()
3413 if (slot != nritems) { in insert_ptr()
3415 tree_mod_log_eb_move(root->fs_info, lower, slot + 1, in insert_ptr()
3416 slot, nritems - slot); in insert_ptr()
3418 btrfs_node_key_ptr_offset(slot + 1), in insert_ptr()
3419 btrfs_node_key_ptr_offset(slot), in insert_ptr()
3420 (nritems - slot) * sizeof(struct btrfs_key_ptr)); in insert_ptr()
3423 ret = tree_mod_log_insert_key(root->fs_info, lower, slot, in insert_ptr()
3427 btrfs_set_node_key(lower, key, slot); in insert_ptr()
3428 btrfs_set_node_blockptr(lower, slot, bytenr); in insert_ptr()
3430 btrfs_set_node_ptr_generation(lower, slot, trans->transid); in insert_ptr()
3600 int slot; in __push_leaf_right() local
3620 slot = path->slots[1]; in __push_leaf_right()
3703 btrfs_set_node_key(upper, &disk_key, slot + 1); in __push_leaf_right()
3745 int slot; in push_leaf_right() local
3753 slot = path->slots[1]; in push_leaf_right()
3755 if (slot >= btrfs_header_nritems(upper) - 1) in push_leaf_right()
3760 right = read_node_slot(root, upper, slot + 1); in push_leaf_right()
3777 slot + 1, &right); in push_leaf_right()
3977 int slot; in push_leaf_left() local
3982 slot = path->slots[1]; in push_leaf_left()
3983 if (slot == 0) in push_leaf_left()
3994 left = read_node_slot(root, path->nodes[1], slot - 1); in push_leaf_left()
4013 path->nodes[1], slot - 1, &left); in push_leaf_left()
4045 int slot, int mid, int nritems) in copy_for_split() argument
4087 BUG_ON(path->slots[0] != slot); in copy_for_split()
4089 if (mid <= slot) { in copy_for_split()
4120 int slot; in push_for_double_split() local
4124 slot = path->slots[0]; in push_for_double_split()
4125 if (slot < btrfs_header_nritems(path->nodes[0])) in push_for_double_split()
4132 ret = push_leaf_right(trans, root, path, 1, space_needed, 0, slot); in push_for_double_split()
4151 slot = path->slots[0]; in push_for_double_split()
4152 ret = push_leaf_left(trans, root, path, 1, space_needed, 0, slot); in push_for_double_split()
4180 int slot; in split_leaf() local
4190 slot = path->slots[0]; in split_leaf()
4191 if (extend && data_size + btrfs_item_size_nr(l, slot) + in split_leaf()
4199 if (slot < btrfs_header_nritems(l)) in split_leaf()
4227 slot = path->slots[0]; in split_leaf()
4231 if (mid <= slot) { in split_leaf()
4235 if (slot >= nritems) { in split_leaf()
4238 mid = slot; in split_leaf()
4251 if (!extend && data_size && slot == 0) { in split_leaf()
4253 } else if ((extend || !data_size) && slot == 0) { in split_leaf()
4256 mid = slot; in split_leaf()
4294 if (mid <= slot) { in split_leaf()
4322 copy_for_split(trans, root, path, l, right, slot, mid, nritems); in split_leaf()
4416 int slot; in split_item() local
4439 slot = path->slots[0] + 1; in split_item()
4441 if (slot != nritems) { in split_item()
4443 memmove_extent_buffer(leaf, btrfs_item_nr_offset(slot + 1), in split_item()
4444 btrfs_item_nr_offset(slot), in split_item()
4445 (nritems - slot) * sizeof(struct btrfs_item)); in split_item()
4449 btrfs_set_item_key(leaf, &disk_key, slot); in split_item()
4451 new_item = btrfs_item_nr(slot); in split_item()
4469 btrfs_item_ptr_offset(leaf, slot), in split_item()
4554 int slot; in btrfs_truncate_item() local
4568 slot = path->slots[0]; in btrfs_truncate_item()
4570 old_size = btrfs_item_size_nr(leaf, slot); in btrfs_truncate_item()
4577 old_data_start = btrfs_item_offset_nr(leaf, slot); in btrfs_truncate_item()
4581 BUG_ON(slot < 0); in btrfs_truncate_item()
4582 BUG_ON(slot >= nritems); in btrfs_truncate_item()
4588 for (i = slot; i < nritems; i++) { in btrfs_truncate_item()
4606 btrfs_item_key(leaf, &disk_key, slot); in btrfs_truncate_item()
4612 fi = btrfs_item_ptr(leaf, slot, in btrfs_truncate_item()
4619 ptr = btrfs_item_ptr_offset(leaf, slot); in btrfs_truncate_item()
4632 btrfs_set_item_key(leaf, &disk_key, slot); in btrfs_truncate_item()
4633 if (slot == 0) in btrfs_truncate_item()
4637 item = btrfs_item_nr(slot); in btrfs_truncate_item()
4653 int slot; in btrfs_extend_item() local
4674 slot = path->slots[0]; in btrfs_extend_item()
4675 old_data = btrfs_item_end_nr(leaf, slot); in btrfs_extend_item()
4677 BUG_ON(slot < 0); in btrfs_extend_item()
4678 if (slot >= nritems) { in btrfs_extend_item()
4681 slot, nritems); in btrfs_extend_item()
4689 for (i = slot; i < nritems; i++) { in btrfs_extend_item()
4704 old_size = btrfs_item_size_nr(leaf, slot); in btrfs_extend_item()
4705 item = btrfs_item_nr(slot); in btrfs_extend_item()
4730 int slot; in setup_items_for_insert() local
4742 slot = path->slots[0]; in setup_items_for_insert()
4755 if (slot != nritems) { in setup_items_for_insert()
4756 unsigned int old_data = btrfs_item_end_nr(leaf, slot); in setup_items_for_insert()
4762 slot, old_data, data_end); in setup_items_for_insert()
4769 for (i = slot; i < nritems; i++) { in setup_items_for_insert()
4778 memmove_extent_buffer(leaf, btrfs_item_nr_offset(slot + nr), in setup_items_for_insert()
4779 btrfs_item_nr_offset(slot), in setup_items_for_insert()
4780 (nritems - slot) * sizeof(struct btrfs_item)); in setup_items_for_insert()
4792 btrfs_set_item_key(leaf, &disk_key, slot + i); in setup_items_for_insert()
4793 item = btrfs_item_nr(slot + i); in setup_items_for_insert()
4820 int slot; in btrfs_insert_empty_items() local
4835 slot = path->slots[0]; in btrfs_insert_empty_items()
4836 BUG_ON(slot < 0); in btrfs_insert_empty_items()
4877 int level, int slot) in del_ptr() argument
4884 if (slot != nritems - 1) { in del_ptr()
4886 tree_mod_log_eb_move(root->fs_info, parent, slot, in del_ptr()
4887 slot + 1, nritems - slot - 1); in del_ptr()
4889 btrfs_node_key_ptr_offset(slot), in del_ptr()
4890 btrfs_node_key_ptr_offset(slot + 1), in del_ptr()
4892 (nritems - slot - 1)); in del_ptr()
4894 ret = tree_mod_log_insert_key(root->fs_info, parent, slot, in del_ptr()
4905 } else if (slot == 0) { in del_ptr()
4949 struct btrfs_path *path, int slot, int nr) in btrfs_del_items() argument
4964 last_off = btrfs_item_offset_nr(leaf, slot + nr - 1); in btrfs_del_items()
4967 dsize += btrfs_item_size_nr(leaf, slot + i); in btrfs_del_items()
4971 if (slot + nr != nritems) { in btrfs_del_items()
4979 for (i = slot + nr; i < nritems; i++) { in btrfs_del_items()
4988 memmove_extent_buffer(leaf, btrfs_item_nr_offset(slot), in btrfs_del_items()
4989 btrfs_item_nr_offset(slot + nr), in btrfs_del_items()
4991 (nritems - slot - nr)); in btrfs_del_items()
5007 if (slot == 0) { in btrfs_del_items()
5020 slot = path->slots[1]; in btrfs_del_items()
5038 path->slots[1] = slot; in btrfs_del_items()
5137 int slot; in btrfs_search_forward() local
5159 sret = bin_search(cur, min_key, level, &slot); in btrfs_search_forward()
5163 if (slot >= nritems) in btrfs_search_forward()
5166 path->slots[level] = slot; in btrfs_search_forward()
5167 btrfs_item_key_to_cpu(cur, &found_key, slot); in btrfs_search_forward()
5170 if (sret && slot > 0) in btrfs_search_forward()
5171 slot--; in btrfs_search_forward()
5176 while (slot < nritems) { in btrfs_search_forward()
5179 gen = btrfs_node_ptr_generation(cur, slot); in btrfs_search_forward()
5181 slot++; in btrfs_search_forward()
5191 if (slot >= nritems) { in btrfs_search_forward()
5192 path->slots[level] = slot; in btrfs_search_forward()
5204 btrfs_node_key_to_cpu(cur, &found_key, slot); in btrfs_search_forward()
5205 path->slots[level] = slot; in btrfs_search_forward()
5211 cur = read_node_slot(root, cur, slot); in btrfs_search_forward()
5612 int slot; in btrfs_find_next_key() local
5620 slot = path->slots[level] + 1; in btrfs_find_next_key()
5623 if (slot >= btrfs_header_nritems(c)) { in btrfs_find_next_key()
5636 slot = btrfs_header_nritems(c) - 1; in btrfs_find_next_key()
5638 btrfs_item_key_to_cpu(c, &cur_key, slot); in btrfs_find_next_key()
5640 btrfs_node_key_to_cpu(c, &cur_key, slot); in btrfs_find_next_key()
5652 slot = path->slots[level]; in btrfs_find_next_key()
5654 slot++; in btrfs_find_next_key()
5659 btrfs_item_key_to_cpu(c, key, slot); in btrfs_find_next_key()
5661 u64 gen = btrfs_node_ptr_generation(c, slot); in btrfs_find_next_key()
5664 slot++; in btrfs_find_next_key()
5667 btrfs_node_key_to_cpu(c, key, slot); in btrfs_find_next_key()
5687 int slot; in btrfs_next_old_leaf() local
5758 slot = path->slots[level] + 1; in btrfs_next_old_leaf()
5760 if (slot >= btrfs_header_nritems(c)) { in btrfs_next_old_leaf()
5777 slot, &key, 0); in btrfs_next_old_leaf()
5811 path->slots[level] = slot; in btrfs_next_old_leaf()