Lines Matching refs:ptr
298 const union xfs_btree_ptr *ptr, in xfs_btree_check_ptr() argument
303 if (xfs_btree_check_lptr(cur, be64_to_cpu((&ptr->l)[index]), in xfs_btree_check_ptr()
312 if (xfs_btree_check_sptr(cur, be32_to_cpu((&ptr->s)[index]), in xfs_btree_check_ptr()
493 new->bc_levels[i].ptr = cur->bc_levels[i].ptr; in xfs_btree_dup_cursor()
789 cur->bc_levels[level].ptr = 1; in xfs_btree_firstrec()
819 cur->bc_levels[level].ptr = be16_to_cpu(block->bb_numrecs); in xfs_btree_lastrec()
1014 const union xfs_btree_ptr *ptr, in xfs_btree_ptr_to_daddr() argument
1021 error = xfs_btree_check_ptr(cur, ptr, 0, 1); in xfs_btree_ptr_to_daddr()
1026 fsbno = be64_to_cpu(ptr->l); in xfs_btree_ptr_to_daddr()
1029 agbno = be32_to_cpu(ptr->s); in xfs_btree_ptr_to_daddr()
1046 union xfs_btree_ptr *ptr, in xfs_btree_readahead_ptr() argument
1051 if (xfs_btree_ptr_to_daddr(cur, ptr, &daddr)) in xfs_btree_readahead_ptr()
1091 const union xfs_btree_ptr *ptr) in xfs_btree_ptr_is_null() argument
1094 return ptr->l == cpu_to_be64(NULLFSBLOCK); in xfs_btree_ptr_is_null()
1096 return ptr->s == cpu_to_be32(NULLAGBLOCK); in xfs_btree_ptr_is_null()
1102 union xfs_btree_ptr *ptr) in xfs_btree_set_ptr_null() argument
1105 ptr->l = cpu_to_be64(NULLFSBLOCK); in xfs_btree_set_ptr_null()
1107 ptr->s = cpu_to_be32(NULLAGBLOCK); in xfs_btree_set_ptr_null()
1117 union xfs_btree_ptr *ptr, in xfs_btree_get_sibling() argument
1124 ptr->l = block->bb_u.l.bb_rightsib; in xfs_btree_get_sibling()
1126 ptr->l = block->bb_u.l.bb_leftsib; in xfs_btree_get_sibling()
1129 ptr->s = block->bb_u.s.bb_rightsib; in xfs_btree_get_sibling()
1131 ptr->s = block->bb_u.s.bb_leftsib; in xfs_btree_get_sibling()
1139 const union xfs_btree_ptr *ptr, in xfs_btree_set_sibling() argument
1146 block->bb_u.l.bb_rightsib = ptr->l; in xfs_btree_set_sibling()
1148 block->bb_u.l.bb_leftsib = ptr->l; in xfs_btree_set_sibling()
1151 block->bb_u.s.bb_rightsib = ptr->s; in xfs_btree_set_sibling()
1153 block->bb_u.s.bb_leftsib = ptr->s; in xfs_btree_set_sibling()
1249 union xfs_btree_ptr ptr; in xfs_btree_is_lastrec() local
1256 xfs_btree_get_sibling(cur, block, &ptr, XFS_BB_RIGHTSIB); in xfs_btree_is_lastrec()
1257 if (!xfs_btree_ptr_is_null(cur, &ptr)) in xfs_btree_is_lastrec()
1266 union xfs_btree_ptr *ptr) in xfs_btree_buf_to_ptr() argument
1269 ptr->l = cpu_to_be64(XFS_DADDR_TO_FSB(cur->bc_mp, in xfs_btree_buf_to_ptr()
1272 ptr->s = cpu_to_be32(xfs_daddr_to_agbno(cur->bc_mp, in xfs_btree_buf_to_ptr()
1308 const union xfs_btree_ptr *ptr, in xfs_btree_get_buf_block() argument
1316 error = xfs_btree_ptr_to_daddr(cur, ptr, &d); in xfs_btree_get_buf_block()
1336 const union xfs_btree_ptr *ptr, in xfs_btree_read_buf_block() argument
1348 error = xfs_btree_ptr_to_daddr(cur, ptr, &d); in xfs_btree_read_buf_block()
1448 union xfs_btree_ptr *ptr, in xfs_btree_shift_ptrs() argument
1457 dst_ptr = (char *)ptr + (dir * xfs_btree_ptr_len(cur)); in xfs_btree_shift_ptrs()
1458 memmove(dst_ptr, ptr, numptrs * xfs_btree_ptr_len(cur)); in xfs_btree_shift_ptrs()
1606 union xfs_btree_ptr ptr; in xfs_btree_increment() local
1626 if (++cur->bc_levels[level].ptr <= xfs_btree_get_numrecs(block)) in xfs_btree_increment()
1630 xfs_btree_get_sibling(cur, block, &ptr, XFS_BB_RIGHTSIB); in xfs_btree_increment()
1631 if (xfs_btree_ptr_is_null(cur, &ptr)) in xfs_btree_increment()
1649 if (++cur->bc_levels[lev].ptr <= xfs_btree_get_numrecs(block)) in xfs_btree_increment()
1676 ptrp = xfs_btree_ptr_addr(cur, cur->bc_levels[lev].ptr, block); in xfs_btree_increment()
1683 cur->bc_levels[lev].ptr = 1; in xfs_btree_increment()
1711 union xfs_btree_ptr ptr; in xfs_btree_decrement() local
1719 if (--cur->bc_levels[level].ptr > 0) in xfs_btree_decrement()
1732 xfs_btree_get_sibling(cur, block, &ptr, XFS_BB_LEFTSIB); in xfs_btree_decrement()
1733 if (xfs_btree_ptr_is_null(cur, &ptr)) in xfs_btree_decrement()
1743 if (--cur->bc_levels[lev].ptr > 0) in xfs_btree_decrement()
1769 ptrp = xfs_btree_ptr_addr(cur, cur->bc_levels[lev].ptr, block); in xfs_btree_decrement()
1775 cur->bc_levels[lev].ptr = xfs_btree_get_numrecs(block); in xfs_btree_decrement()
1890 union xfs_btree_ptr ptr; /* ptr to btree block */ in xfs_btree_lookup() local
1902 cur->bc_ops->init_ptr_from_cur(cur, &ptr); in xfs_btree_lookup()
1903 pp = &ptr; in xfs_btree_lookup()
1942 cur->bc_levels[0].ptr = dir != XFS_LOOKUP_LE; in xfs_btree_lookup()
1994 cur->bc_levels[level].ptr = keyno; in xfs_btree_lookup()
2005 xfs_btree_get_sibling(cur, block, &ptr, XFS_BB_RIGHTSIB); in xfs_btree_lookup()
2008 !xfs_btree_ptr_is_null(cur, &ptr)) { in xfs_btree_lookup()
2011 cur->bc_levels[0].ptr = keyno; in xfs_btree_lookup()
2022 cur->bc_levels[0].ptr = keyno; in xfs_btree_lookup()
2134 int ptr) in xfs_btree_needs_key_update() argument
2136 return (cur->bc_flags & XFS_BTREE_OVERLAPPING) || ptr == 1; in xfs_btree_needs_key_update()
2158 int ptr; in __xfs_btree_updkeys() local
2182 ptr = cur->bc_levels[level].ptr; in __xfs_btree_updkeys()
2183 nlkey = xfs_btree_key_addr(cur, ptr, block); in __xfs_btree_updkeys()
2184 nhkey = xfs_btree_high_key_addr(cur, ptr, block); in __xfs_btree_updkeys()
2190 xfs_btree_log_keys(cur, bp, ptr, ptr); in __xfs_btree_updkeys()
2224 int ptr; in xfs_btree_update_keys() local
2239 for (level++, ptr = 1; ptr == 1 && level < cur->bc_nlevels; level++) { in xfs_btree_update_keys()
2249 ptr = cur->bc_levels[level].ptr; in xfs_btree_update_keys()
2250 kp = xfs_btree_key_addr(cur, ptr, block); in xfs_btree_update_keys()
2252 xfs_btree_log_keys(cur, bp, ptr, ptr); in xfs_btree_update_keys()
2271 int ptr; in xfs_btree_update() local
2283 ptr = cur->bc_levels[0].ptr; in xfs_btree_update()
2284 rp = xfs_btree_rec_addr(cur, ptr, block); in xfs_btree_update()
2288 xfs_btree_log_recs(cur, bp, ptr, ptr); in xfs_btree_update()
2296 ptr, LASTREC_UPDATE); in xfs_btree_update()
2300 if (xfs_btree_needs_key_update(cur, ptr)) { in xfs_btree_update()
2358 if (cur->bc_levels[level].ptr <= 1) in xfs_btree_lshift()
2492 cur->bc_levels[level].ptr--; in xfs_btree_lshift()
2554 if (cur->bc_levels[level].ptr >= lrecs) in xfs_btree_rshift()
2742 if ((lrecs & 1) && cur->bc_levels[level].ptr <= rrecs + 1) in __xfs_btree_split()
2838 if (cur->bc_levels[level].ptr > lrecs + 1) { in __xfs_btree_split()
2840 cur->bc_levels[level].ptr -= lrecs; in __xfs_btree_split()
2850 (*curp)->bc_levels[level + 1].ptr++; in __xfs_btree_split()
3016 cur->bc_levels[level + 1].ptr = 1; in xfs_btree_new_iroot()
3177 cur->bc_levels[cur->bc_nlevels].ptr = nptr; in xfs_btree_new_root()
3236 *oindex = *index = cur->bc_levels[level].ptr; in xfs_btree_make_block_unfull()
3251 *index = cur->bc_levels[level].ptr; in xfs_btree_make_block_unfull()
3276 int ptr; /* key/record index */ in xfs_btree_insrec() local
3298 ptr = cur->bc_levels[level].ptr; in xfs_btree_insrec()
3299 if (ptr == 0) { in xfs_btree_insrec()
3304 optr = ptr; in xfs_btree_insrec()
3319 if (ptr <= numrecs) { in xfs_btree_insrec()
3322 xfs_btree_rec_addr(cur, ptr, block))); in xfs_btree_insrec()
3325 xfs_btree_key_addr(cur, ptr, block))); in xfs_btree_insrec()
3337 &optr, &ptr, &nptr, &ncur, lkey, stat); in xfs_btree_insrec()
3359 XFS_BTREE_STATS_ADD(cur, moves, numrecs - ptr + 1); in xfs_btree_insrec()
3366 kp = xfs_btree_key_addr(cur, ptr, block); in xfs_btree_insrec()
3367 pp = xfs_btree_ptr_addr(cur, ptr, block); in xfs_btree_insrec()
3369 for (i = numrecs - ptr; i >= 0; i--) { in xfs_btree_insrec()
3375 xfs_btree_shift_keys(cur, kp, 1, numrecs - ptr + 1); in xfs_btree_insrec()
3376 xfs_btree_shift_ptrs(cur, pp, 1, numrecs - ptr + 1); in xfs_btree_insrec()
3387 xfs_btree_log_ptrs(cur, bp, ptr, numrecs); in xfs_btree_insrec()
3388 xfs_btree_log_keys(cur, bp, ptr, numrecs); in xfs_btree_insrec()
3390 if (ptr < numrecs) { in xfs_btree_insrec()
3392 xfs_btree_key_addr(cur, ptr + 1, block))); in xfs_btree_insrec()
3399 rp = xfs_btree_rec_addr(cur, ptr, block); in xfs_btree_insrec()
3401 xfs_btree_shift_recs(cur, rp, 1, numrecs - ptr + 1); in xfs_btree_insrec()
3406 xfs_btree_log_recs(cur, bp, ptr, numrecs); in xfs_btree_insrec()
3408 if (ptr < numrecs) { in xfs_btree_insrec()
3410 xfs_btree_rec_addr(cur, ptr + 1, block))); in xfs_btree_insrec()
3440 ptr, LASTREC_INSREC); in xfs_btree_insrec()
3572 union xfs_btree_ptr ptr; in xfs_btree_kill_iroot() local
3608 xfs_btree_get_sibling(cur, block, &ptr, XFS_BB_LEFTSIB); in xfs_btree_kill_iroot()
3609 ASSERT(xfs_btree_ptr_is_null(cur, &ptr)); in xfs_btree_kill_iroot()
3610 xfs_btree_get_sibling(cur, block, &ptr, XFS_BB_RIGHTSIB); in xfs_btree_kill_iroot()
3611 ASSERT(xfs_btree_ptr_is_null(cur, &ptr)); in xfs_btree_kill_iroot()
3723 int ptr; /* key/record index */ in xfs_btree_delrec() local
3736 ptr = cur->bc_levels[level].ptr; in xfs_btree_delrec()
3737 if (ptr == 0) { in xfs_btree_delrec()
3753 if (ptr > numrecs) { in xfs_btree_delrec()
3759 XFS_BTREE_STATS_ADD(cur, moves, numrecs - ptr); in xfs_btree_delrec()
3767 lkp = xfs_btree_key_addr(cur, ptr + 1, block); in xfs_btree_delrec()
3768 lpp = xfs_btree_ptr_addr(cur, ptr + 1, block); in xfs_btree_delrec()
3770 for (i = 0; i < numrecs - ptr; i++) { in xfs_btree_delrec()
3776 if (ptr < numrecs) { in xfs_btree_delrec()
3777 xfs_btree_shift_keys(cur, lkp, -1, numrecs - ptr); in xfs_btree_delrec()
3778 xfs_btree_shift_ptrs(cur, lpp, -1, numrecs - ptr); in xfs_btree_delrec()
3779 xfs_btree_log_keys(cur, bp, ptr, numrecs - 1); in xfs_btree_delrec()
3780 xfs_btree_log_ptrs(cur, bp, ptr, numrecs - 1); in xfs_btree_delrec()
3784 if (ptr < numrecs) { in xfs_btree_delrec()
3786 xfs_btree_rec_addr(cur, ptr + 1, block), in xfs_btree_delrec()
3787 -1, numrecs - ptr); in xfs_btree_delrec()
3788 xfs_btree_log_recs(cur, bp, ptr, numrecs - 1); in xfs_btree_delrec()
3804 ptr, LASTREC_DELREC); in xfs_btree_delrec()
3856 if (xfs_btree_needs_key_update(cur, ptr)) { in xfs_btree_delrec()
4046 cur->bc_levels[0].ptr++; in xfs_btree_delrec()
4184 cur->bc_levels[level].ptr += lrecs; in xfs_btree_delrec()
4205 cur->bc_levels[level].ptr--; in xfs_btree_delrec()
4268 if (cur->bc_levels[level].ptr == 0) { in xfs_btree_delete()
4294 int ptr; /* record number */ in xfs_btree_get_rec() local
4299 ptr = cur->bc_levels[0].ptr; in xfs_btree_get_rec()
4311 if (ptr > xfs_btree_get_numrecs(block) || ptr <= 0) { in xfs_btree_get_rec()
4319 *recp = xfs_btree_rec_addr(cur, ptr, block); in xfs_btree_get_rec()
4394 union xfs_btree_ptr *ptr; in xfs_btree_visit_blocks() local
4396 ptr = xfs_btree_ptr_addr(cur, 1, block); in xfs_btree_visit_blocks()
4397 xfs_btree_readahead_ptr(cur, ptr, 1); in xfs_btree_visit_blocks()
4400 xfs_btree_copy_ptrs(cur, &lptr, ptr, 1); in xfs_btree_visit_blocks()
4789 union xfs_btree_ptr ptr; in xfs_btree_overlapped_query_range() local
4806 cur->bc_ops->init_ptr_from_cur(cur, &ptr); in xfs_btree_overlapped_query_range()
4807 error = xfs_btree_lookup_get_block(cur, level, &ptr, &block); in xfs_btree_overlapped_query_range()
4817 cur->bc_levels[level].ptr = 1; in xfs_btree_overlapped_query_range()
4823 if (cur->bc_levels[level].ptr > in xfs_btree_overlapped_query_range()
4827 cur->bc_levels[level + 1].ptr++; in xfs_btree_overlapped_query_range()
4834 recp = xfs_btree_rec_addr(cur, cur->bc_levels[0].ptr, in xfs_btree_overlapped_query_range()
4858 cur->bc_levels[level].ptr++; in xfs_btree_overlapped_query_range()
4863 lkp = xfs_btree_key_addr(cur, cur->bc_levels[level].ptr, block); in xfs_btree_overlapped_query_range()
4864 hkp = xfs_btree_high_key_addr(cur, cur->bc_levels[level].ptr, in xfs_btree_overlapped_query_range()
4866 pp = xfs_btree_ptr_addr(cur, cur->bc_levels[level].ptr, block); in xfs_btree_overlapped_query_range()
4889 cur->bc_levels[level].ptr = 1; in xfs_btree_overlapped_query_range()
4895 cur->bc_levels[level].ptr++; in xfs_btree_overlapped_query_range()
4912 cur->bc_levels[i].ptr = 0; in xfs_btree_overlapped_query_range()
5052 if (cur->bc_levels[0].ptr < xfs_btree_get_numrecs(block)) in xfs_btree_has_more_records()