Lines Matching refs:index

137 nilfs_btree_node_get_key(const struct nilfs_btree_node *node, int index)
139 return le64_to_cpu(*(nilfs_btree_node_dkeys(node) + index));
143 nilfs_btree_node_set_key(struct nilfs_btree_node *node, int index, __u64 key)
145 *(nilfs_btree_node_dkeys(node) + index) = cpu_to_le64(key);
149 nilfs_btree_node_get_ptr(const struct nilfs_btree_node *node, int index,
152 return le64_to_cpu(*(nilfs_btree_node_dptrs(node, ncmax) + index));
156 nilfs_btree_node_set_ptr(struct nilfs_btree_node *node, int index, __u64 ptr,
159 *(nilfs_btree_node_dptrs(node, ncmax) + index) = cpu_to_le64(ptr);
239 static void nilfs_btree_node_insert(struct nilfs_btree_node *node, int index,
249 if (index < nchildren) {
250 memmove(dkeys + index + 1, dkeys + index,
251 (nchildren - index) * sizeof(*dkeys));
252 memmove(dptrs + index + 1, dptrs + index,
253 (nchildren - index) * sizeof(*dptrs));
255 dkeys[index] = cpu_to_le64(key);
256 dptrs[index] = cpu_to_le64(ptr);
262 static void nilfs_btree_node_delete(struct nilfs_btree_node *node, int index,
273 key = le64_to_cpu(dkeys[index]);
274 ptr = le64_to_cpu(dptrs[index]);
281 if (index < nchildren - 1) {
282 memmove(dkeys + index, dkeys + index + 1,
283 (nchildren - index - 1) * sizeof(*dkeys));
284 memmove(dptrs + index, dptrs + index + 1,
285 (nchildren - index - 1) * sizeof(*dptrs));
295 int index, low, high, s;
300 index = 0;
303 index = (low + high) / 2;
304 nkey = nilfs_btree_node_get_key(node, index);
309 low = index + 1;
312 high = index - 1;
317 /* adjust index */
319 if (s > 0 && index > 0)
320 index--;
322 index++;
325 *indexp = index;
466 int index; /* current index on the parent node */
502 for (n = ra->max_ra_blocks, i = ra->index + 1;
554 int level, index, found, ncmax, ret;
561 found = nilfs_btree_node_lookup(node, key, &index);
562 ptr = nilfs_btree_node_get_ptr(node, index,
565 path[level].bp_index = index;
574 p.index = index;
587 found = nilfs_btree_node_lookup(node, key, &index);
589 index = 0;
590 if (index < ncmax) {
591 ptr = nilfs_btree_node_get_ptr(node, index, ncmax);
597 path[level].bp_index = index;
614 int index, level, ncmax, ret;
617 index = nilfs_btree_node_get_nchildren(node) - 1;
618 if (index < 0)
621 ptr = nilfs_btree_node_get_ptr(node, index,
624 path[level].bp_index = index;
634 index = nilfs_btree_node_get_nchildren(node) - 1;
635 ptr = nilfs_btree_node_get_ptr(node, index, ncmax);
636 path[level].bp_index = index;
640 *keyp = nilfs_btree_node_get_key(node, index);
663 int index, next_adj, level;
665 /* Next index is already set to bp_index for leaf nodes. */
673 index = path[level].bp_index + next_adj;
674 if (index < nilfs_btree_node_get_nchildren(node)) {
676 *nextkey = nilfs_btree_node_get_key(node, index);
679 /* For non-leaf nodes, next index is stored at bp_index + 1. */
712 int ret, cnt, index, maxlevel, ncmax;
736 index = path[level].bp_index + 1;
738 while (index < nilfs_btree_node_get_nchildren(node)) {
739 if (nilfs_btree_node_get_key(node, index) !=
742 ptr2 = nilfs_btree_node_get_ptr(node, index, ncmax);
751 index++;
758 p.index = path[level + 1].bp_index + 1;
760 if (p.index >= nilfs_btree_node_get_nchildren(p.node) ||
761 nilfs_btree_node_get_key(p.node, p.index) != key + cnt)
763 ptr2 = nilfs_btree_node_get_ptr(p.node, p.index, p.ncmax);
764 path[level + 1].bp_index = p.index;
775 index = 0;
776 path[level].bp_index = index;
2155 pgoff_t index = 0;
2165 while (filemap_get_folios_tag(btcache, &index, (pgoff_t)-1,