Lines Matching refs:cur

57  * Delete record pointed to by cur/level.
63 xfs_btree_cur_t *cur, /* btree cursor */
97 mp = cur->bc_mp;
102 ptr = cur->bc_ptrs[level];
111 bp = cur->bc_bufs[level];
114 if ((error = xfs_btree_check_sblock(cur, block, level, bp)))
132 kp = XFS_INOBT_KEY_ADDR(block, 1, cur);
133 pp = XFS_INOBT_PTR_ADDR(block, 1, cur);
136 if ((error = xfs_btree_check_sptr(cur, be32_to_cpu(pp[i]), level)))
145 xfs_inobt_log_keys(cur, bp, ptr, numrecs - 1);
146 xfs_inobt_log_ptrs(cur, bp, ptr, numrecs - 1);
154 rp = XFS_INOBT_REC_ADDR(block, 1, cur);
158 xfs_inobt_log_recs(cur, bp, ptr, numrecs - 1);
174 xfs_inobt_log_block(cur->bc_tp, bp, XFS_BB_NUMRECS);
178 if (level == cur->bc_nlevels - 1) {
186 agbp = cur->bc_private.i.agbp;
198 if ((error = xfs_free_extent(cur->bc_tp,
199 XFS_AGB_TO_FSB(mp, cur->bc_private.i.agno, bno), 1)))
201 xfs_trans_binval(cur->bc_tp, bp);
202 xfs_ialloc_log_agi(cur->bc_tp, agbp,
207 cur->bc_bufs[level] = NULL;
208 cur->bc_nlevels--;
210 (error = xfs_inobt_decrement(cur, level, &i)))
219 if (ptr == 1 && (error = xfs_inobt_updkey(cur, kp, level + 1)))
225 if (numrecs >= XFS_INOBT_BLOCK_MINRECS(level, cur)) {
227 (error = xfs_inobt_decrement(cur, level, &i)))
245 if ((error = xfs_btree_dup_cursor(cur, &tcur)))
269 if ((error = xfs_btree_check_sblock(cur, right, level, rbp)))
282 XFS_INOBT_BLOCK_MINRECS(level, cur)) {
287 XFS_INOBT_BLOCK_MINRECS(level, cur));
291 (error = xfs_inobt_decrement(cur, level,
329 if ((error = xfs_btree_check_sblock(cur, left, level, lbp)))
342 XFS_INOBT_BLOCK_MINRECS(level, cur)) {
347 XFS_INOBT_BLOCK_MINRECS(level, cur));
351 cur->bc_ptrs[0]++;
374 lrecs + numrecs <= XFS_INOBT_BLOCK_MAXRECS(level, cur)) {
383 if ((error = xfs_btree_read_bufs(mp, cur->bc_tp,
384 cur->bc_private.i.agno, lbno, 0, &lbp,
389 if ((error = xfs_btree_check_sblock(cur, left, level, lbp)))
396 rrecs + numrecs <= XFS_INOBT_BLOCK_MAXRECS(level, cur)) {
405 if ((error = xfs_btree_read_bufs(mp, cur->bc_tp,
406 cur->bc_private.i.agno, rbno, 0, &rbp,
411 if ((error = xfs_btree_check_sblock(cur, right, level, rbp)))
419 if (level > 0 && (error = xfs_inobt_decrement(cur, level, &i)))
432 lkp = XFS_INOBT_KEY_ADDR(left, lrecs + 1, cur);
433 lpp = XFS_INOBT_PTR_ADDR(left, lrecs + 1, cur);
434 rkp = XFS_INOBT_KEY_ADDR(right, 1, cur);
435 rpp = XFS_INOBT_PTR_ADDR(right, 1, cur);
438 if ((error = xfs_btree_check_sptr(cur, be32_to_cpu(rpp[i]), level)))
444 xfs_inobt_log_keys(cur, lbp, lrecs + 1, lrecs + rrecs);
445 xfs_inobt_log_ptrs(cur, lbp, lrecs + 1, lrecs + rrecs);
450 lrp = XFS_INOBT_REC_ADDR(left, lrecs + 1, cur);
451 rrp = XFS_INOBT_REC_ADDR(right, 1, cur);
453 xfs_inobt_log_recs(cur, lbp, lrecs + 1, lrecs + rrecs);
460 xfs_btree_setbuf(cur, level, lbp);
461 cur->bc_ptrs[level] += lrecs;
467 else if (level + 1 < cur->bc_nlevels &&
468 (error = xfs_alloc_increment(cur, level + 1, &i)))
479 xfs_inobt_log_block(cur->bc_tp, lbp, XFS_BB_NUMRECS | XFS_BB_RIGHTSIB);
488 if ((error = xfs_btree_read_bufs(mp, cur->bc_tp,
489 cur->bc_private.i.agno, be32_to_cpu(left->bb_rightsib), 0,
493 if ((error = xfs_btree_check_sblock(cur, rrblock, level, rrbp)))
496 xfs_inobt_log_block(cur->bc_tp, rrbp, XFS_BB_LEFTSIB);
501 if ((error = xfs_free_extent(cur->bc_tp, XFS_AGB_TO_FSB(mp,
502 cur->bc_private.i.agno, rbno), 1)))
504 xfs_trans_binval(cur->bc_tp, rbp);
512 cur->bc_ptrs[level]--;
530 xfs_btree_cur_t *cur, /* btree cursor */
534 xfs_btree_cur_t **curp, /* output: new cursor replacing cur */
564 if (level >= cur->bc_nlevels) {
565 error = xfs_inobt_newroot(cur, &i);
574 optr = ptr = cur->bc_ptrs[level];
585 bp = cur->bc_bufs[level];
589 if ((error = xfs_btree_check_sblock(cur, block, level, bp)))
596 rp = XFS_INOBT_REC_ADDR(block, ptr, cur);
597 xfs_btree_check_rec(cur->bc_btnum, recp, rp);
599 kp = XFS_INOBT_KEY_ADDR(block, ptr, cur);
600 xfs_btree_check_key(cur->bc_btnum, &key, kp);
610 if (numrecs == XFS_INOBT_BLOCK_MAXRECS(level, cur)) {
614 if ((error = xfs_inobt_rshift(cur, level, &i)))
623 if ((error = xfs_inobt_lshift(cur, level, &i)))
626 optr = ptr = cur->bc_ptrs[level];
634 if ((error = xfs_inobt_split(cur, level, &nbno,
638 bp = cur->bc_bufs[level];
641 if ((error = xfs_btree_check_sblock(cur,
645 ptr = cur->bc_ptrs[level];
667 kp = XFS_INOBT_KEY_ADDR(block, 1, cur);
668 pp = XFS_INOBT_PTR_ADDR(block, 1, cur);
671 if ((error = xfs_btree_check_sptr(cur, be32_to_cpu(pp[i - 1]), level)))
683 if ((error = xfs_btree_check_sptr(cur, *bnop, level)))
690 xfs_inobt_log_keys(cur, bp, ptr, numrecs);
691 xfs_inobt_log_ptrs(cur, bp, ptr, numrecs);
696 rp = XFS_INOBT_REC_ADDR(block, 1, cur);
706 xfs_inobt_log_recs(cur, bp, ptr, numrecs);
711 xfs_inobt_log_block(cur->bc_tp, bp, XFS_BB_NUMRECS);
718 xfs_btree_check_rec(cur->bc_btnum, rp + ptr - 1,
721 xfs_btree_check_key(cur->bc_btnum, kp + ptr - 1,
728 if (optr == 1 && (error = xfs_inobt_updkey(cur, &key, level + 1)))
772 xfs_btree_cur_t *cur, /* btree cursor */
783 kp = XFS_INOBT_KEY_ADDR(block, 1, cur);
786 xfs_trans_log_buf(cur->bc_tp, bp, first, last);
794 xfs_btree_cur_t *cur, /* btree cursor */
805 pp = XFS_INOBT_PTR_ADDR(block, 1, cur);
808 xfs_trans_log_buf(cur->bc_tp, bp, first, last);
816 xfs_btree_cur_t *cur, /* btree cursor */
827 rp = XFS_INOBT_REC_ADDR(block, 1, cur);
830 xfs_trans_log_buf(cur->bc_tp, bp, first, last);
839 xfs_btree_cur_t *cur, /* btree cursor */
855 mp = cur->bc_mp;
859 agi = XFS_BUF_TO_AGI(cur->bc_private.i.agbp);
869 for (level = cur->bc_nlevels - 1, diff = 1; level >= 0; level--) {
881 bp = cur->bc_bufs[level];
889 if ((error = xfs_btree_read_bufs(mp, cur->bc_tp,
892 xfs_btree_setbuf(cur, level, bp);
897 if ((error = xfs_btree_check_sblock(cur, block, level,
921 kkbase = XFS_INOBT_KEY_ADDR(block, 1, cur);
923 krbase = XFS_INOBT_REC_ADDR(block, 1, cur);
933 ASSERT(level == 0 && cur->bc_nlevels == 1);
934 cur->bc_ptrs[0] = dir != XFS_LOOKUP_LE;
966 startino - cur->bc_rec.i.ir_startino;
995 agbno = be32_to_cpu(*XFS_INOBT_PTR_ADDR(block, keyno, cur));
997 if ((error = xfs_btree_check_sptr(cur, agbno, level)))
1000 cur->bc_ptrs[level] = keyno;
1018 cur->bc_ptrs[0] = keyno;
1019 if ((error = xfs_inobt_increment(cur, 0, &i)))
1028 cur->bc_ptrs[0] = keyno;
1040 * Move 1 record left from cur/level if possible.
1041 * Update cur to reflect the new path.
1045 xfs_btree_cur_t *cur, /* btree cursor */
1069 rbp = cur->bc_bufs[level];
1072 if ((error = xfs_btree_check_sblock(cur, right, level, rbp)))
1086 if (cur->bc_ptrs[level] <= 1) {
1093 if ((error = xfs_btree_read_bufs(cur->bc_mp, cur->bc_tp,
1094 cur->bc_private.i.agno, be32_to_cpu(right->bb_leftsib),
1098 if ((error = xfs_btree_check_sblock(cur, left, level, lbp)))
1103 if (be16_to_cpu(left->bb_numrecs) == XFS_INOBT_BLOCK_MAXRECS(level, cur)) {
1112 lkp = XFS_INOBT_KEY_ADDR(left, nrec, cur);
1113 rkp = XFS_INOBT_KEY_ADDR(right, 1, cur);
1115 xfs_inobt_log_keys(cur, lbp, nrec, nrec);
1116 lpp = XFS_INOBT_PTR_ADDR(left, nrec, cur);
1117 rpp = XFS_INOBT_PTR_ADDR(right, 1, cur);
1119 if ((error = xfs_btree_check_sptr(cur, be32_to_cpu(*rpp), level)))
1123 xfs_inobt_log_ptrs(cur, lbp, nrec, nrec);
1129 lrp = XFS_INOBT_REC_ADDR(left, nrec, cur);
1130 rrp = XFS_INOBT_REC_ADDR(right, 1, cur);
1132 xfs_inobt_log_recs(cur, lbp, nrec, nrec);
1138 xfs_inobt_log_block(cur->bc_tp, lbp, XFS_BB_NUMRECS);
1141 xfs_btree_check_key(cur->bc_btnum, lkp - 1, lkp);
1143 xfs_btree_check_rec(cur->bc_btnum, lrp - 1, lrp);
1146 xfs_inobt_log_block(cur->bc_tp, rbp, XFS_BB_NUMRECS);
1153 if ((error = xfs_btree_check_sptr(cur, be32_to_cpu(rpp[i + 1]),
1160 xfs_inobt_log_keys(cur, rbp, 1, be16_to_cpu(right->bb_numrecs));
1161 xfs_inobt_log_ptrs(cur, rbp, 1, be16_to_cpu(right->bb_numrecs));
1164 xfs_inobt_log_recs(cur, rbp, 1, be16_to_cpu(right->bb_numrecs));
1171 if ((error = xfs_inobt_updkey(cur, rkp, level + 1)))
1176 cur->bc_ptrs[level]--;
1186 xfs_btree_cur_t *cur, /* btree cursor */
1207 ASSERT(cur->bc_nlevels < XFS_IN_MAXLEVELS(cur->bc_mp));
1212 agi = XFS_BUF_TO_AGI(cur->bc_private.i.agbp);
1213 args.tp = cur->bc_tp;
1214 args.mp = cur->bc_mp;
1215 args.fsbno = XFS_AGB_TO_FSB(args.mp, cur->bc_private.i.agno,
1238 xfs_ialloc_log_agi(args.tp, cur->bc_private.i.agbp,
1246 bp = cur->bc_bufs[cur->bc_nlevels - 1];
1249 if ((error = xfs_btree_check_sblock(cur, block, cur->bc_nlevels - 1, bp)))
1265 if ((error = xfs_btree_check_sblock(cur, right,
1266 cur->bc_nlevels - 1, rbp)))
1282 if ((error = xfs_btree_check_sblock(cur, left,
1283 cur->bc_nlevels - 1, lbp)))
1290 new->bb_magic = cpu_to_be32(xfs_magics[cur->bc_btnum]);
1291 new->bb_level = cpu_to_be16(cur->bc_nlevels);
1300 kp = XFS_INOBT_KEY_ADDR(new, 1, cur);
1302 kp[0] = *XFS_INOBT_KEY_ADDR(left, 1, cur); /* INT_: struct copy */
1303 kp[1] = *XFS_INOBT_KEY_ADDR(right, 1, cur); /* INT_: struct copy */
1305 rp = XFS_INOBT_REC_ADDR(left, 1, cur);
1307 rp = XFS_INOBT_REC_ADDR(right, 1, cur);
1310 xfs_inobt_log_keys(cur, nbp, 1, 2);
1314 pp = XFS_INOBT_PTR_ADDR(new, 1, cur);
1317 xfs_inobt_log_ptrs(cur, nbp, 1, 2);
1321 xfs_btree_setbuf(cur, cur->bc_nlevels, nbp);
1322 cur->bc_ptrs[cur->bc_nlevels] = nptr;
1323 cur->bc_nlevels++;
1329 * Move 1 record right from cur/level if possible.
1330 * Update cur to reflect the new path.
1334 xfs_btree_cur_t *cur, /* btree cursor */
1356 lbp = cur->bc_bufs[level];
1359 if ((error = xfs_btree_check_sblock(cur, left, level, lbp)))
1373 if (cur->bc_ptrs[level] >= be16_to_cpu(left->bb_numrecs)) {
1380 if ((error = xfs_btree_read_bufs(cur->bc_mp, cur->bc_tp,
1381 cur->bc_private.i.agno, be32_to_cpu(left->bb_rightsib),
1385 if ((error = xfs_btree_check_sblock(cur, right, level, rbp)))
1390 if (be16_to_cpu(right->bb_numrecs) == XFS_INOBT_BLOCK_MAXRECS(level, cur)) {
1399 lkp = XFS_INOBT_KEY_ADDR(left, be16_to_cpu(left->bb_numrecs), cur);
1400 lpp = XFS_INOBT_PTR_ADDR(left, be16_to_cpu(left->bb_numrecs), cur);
1401 rkp = XFS_INOBT_KEY_ADDR(right, 1, cur);
1402 rpp = XFS_INOBT_PTR_ADDR(right, 1, cur);
1405 if ((error = xfs_btree_check_sptr(cur, be32_to_cpu(rpp[i]), level)))
1412 if ((error = xfs_btree_check_sptr(cur, be32_to_cpu(*lpp), level)))
1417 xfs_inobt_log_keys(cur, rbp, 1, be16_to_cpu(right->bb_numrecs) + 1);
1418 xfs_inobt_log_ptrs(cur, rbp, 1, be16_to_cpu(right->bb_numrecs) + 1);
1420 lrp = XFS_INOBT_REC_ADDR(left, be16_to_cpu(left->bb_numrecs), cur);
1421 rrp = XFS_INOBT_REC_ADDR(right, 1, cur);
1424 xfs_inobt_log_recs(cur, rbp, 1, be16_to_cpu(right->bb_numrecs) + 1);
1432 xfs_inobt_log_block(cur->bc_tp, lbp, XFS_BB_NUMRECS);
1436 xfs_btree_check_key(cur->bc_btnum, rkp, rkp + 1);
1438 xfs_btree_check_rec(cur->bc_btnum, rrp, rrp + 1);
1440 xfs_inobt_log_block(cur->bc_tp, rbp, XFS_BB_NUMRECS);
1445 if ((error = xfs_btree_dup_cursor(cur, &tcur)))
1459 * Split cur/level block in half.
1464 xfs_btree_cur_t *cur, /* btree cursor */
1489 lbp = cur->bc_bufs[level];
1490 args.tp = cur->bc_tp;
1491 args.mp = cur->bc_mp;
1497 args.fsbno = XFS_AGB_TO_FSB(args.mp, cur->bc_private.i.agno, lbno);
1519 if ((error = xfs_btree_check_sblock(cur, left, level, lbp)))
1525 right->bb_magic = cpu_to_be32(xfs_magics[cur->bc_btnum]);
1533 cur->bc_ptrs[level] <= be16_to_cpu(right->bb_numrecs) + 1)
1540 lkp = XFS_INOBT_KEY_ADDR(left, i, cur);
1541 lpp = XFS_INOBT_PTR_ADDR(left, i, cur);
1542 rkp = XFS_INOBT_KEY_ADDR(right, 1, cur);
1543 rpp = XFS_INOBT_PTR_ADDR(right, 1, cur);
1546 if ((error = xfs_btree_check_sptr(cur, be32_to_cpu(lpp[i]), level)))
1552 xfs_inobt_log_keys(cur, rbp, 1, be16_to_cpu(right->bb_numrecs));
1553 xfs_inobt_log_ptrs(cur, rbp, 1, be16_to_cpu(right->bb_numrecs));
1560 lrp = XFS_INOBT_REC_ADDR(left, i, cur);
1561 rrp = XFS_INOBT_REC_ADDR(right, 1, cur);
1563 xfs_inobt_log_recs(cur, rbp, 1, be16_to_cpu(right->bb_numrecs));
1589 if ((error = xfs_btree_check_sblock(cur, rrblock, level, rrbp)))
1599 if (cur->bc_ptrs[level] > be16_to_cpu(left->bb_numrecs) + 1) {
1600 xfs_btree_setbuf(cur, level, rbp);
1601 cur->bc_ptrs[level] -= be16_to_cpu(left->bb_numrecs);
1607 if (level + 1 < cur->bc_nlevels) {
1608 if ((error = xfs_btree_dup_cursor(cur, curp)))
1622 xfs_btree_cur_t *cur, /* btree cursor */
1634 for (ptr = 1; ptr == 1 && level < cur->bc_nlevels; level++) {
1642 bp = cur->bc_bufs[level];
1645 if ((error = xfs_btree_check_sblock(cur, block, level, bp)))
1648 ptr = cur->bc_ptrs[level];
1649 kp = XFS_INOBT_KEY_ADDR(block, ptr, cur);
1651 xfs_inobt_log_keys(cur, bp, ptr, ptr);
1666 xfs_btree_cur_t *cur, /* btree cursor */
1674 ASSERT(level < cur->bc_nlevels);
1678 xfs_btree_readahead(cur, level, XFS_BTCUR_LEFTRA);
1683 if (--cur->bc_ptrs[level] > 0) {
1690 block = XFS_BUF_TO_INOBT_BLOCK(cur->bc_bufs[level]);
1692 if ((error = xfs_btree_check_sblock(cur, block, level,
1693 cur->bc_bufs[level])))
1707 for (lev = level + 1; lev < cur->bc_nlevels; lev++) {
1708 if (--cur->bc_ptrs[lev] > 0)
1714 xfs_btree_readahead(cur, lev, XFS_BTCUR_LEFTRA);
1719 ASSERT(lev < cur->bc_nlevels);
1724 for (block = XFS_BUF_TO_INOBT_BLOCK(cur->bc_bufs[lev]); lev > level; ) {
1728 agbno = be32_to_cpu(*XFS_INOBT_PTR_ADDR(block, cur->bc_ptrs[lev], cur));
1729 if ((error = xfs_btree_read_bufs(cur->bc_mp, cur->bc_tp,
1730 cur->bc_private.i.agno, agbno, 0, &bp,
1734 xfs_btree_setbuf(cur, lev, bp);
1736 if ((error = xfs_btree_check_sblock(cur, block, lev, bp)))
1738 cur->bc_ptrs[lev] = be16_to_cpu(block->bb_numrecs);
1745 * Delete the record pointed to by cur.
1751 xfs_btree_cur_t *cur, /* btree cursor */
1764 if ((error = xfs_inobt_delrec(cur, level, &i)))
1768 for (level = 1; level < cur->bc_nlevels; level++) {
1769 if (cur->bc_ptrs[level] == 0) {
1770 if ((error = xfs_inobt_decrement(cur, level, &i)))
1786 xfs_btree_cur_t *cur, /* btree cursor */
1800 bp = cur->bc_bufs[0];
1801 ptr = cur->bc_ptrs[0];
1804 if ((error = xfs_btree_check_sblock(cur, block, 0, bp)))
1817 rec = XFS_INOBT_REC_ADDR(block, ptr, cur);
1831 xfs_btree_cur_t *cur, /* btree cursor */
1840 ASSERT(level < cur->bc_nlevels);
1844 xfs_btree_readahead(cur, level, XFS_BTCUR_RIGHTRA);
1848 bp = cur->bc_bufs[level];
1851 if ((error = xfs_btree_check_sblock(cur, block, level, bp)))
1858 if (++cur->bc_ptrs[level] <= be16_to_cpu(block->bb_numrecs)) {
1873 for (lev = level + 1; lev < cur->bc_nlevels; lev++) {
1874 bp = cur->bc_bufs[lev];
1877 if ((error = xfs_btree_check_sblock(cur, block, lev, bp)))
1880 if (++cur->bc_ptrs[lev] <= be16_to_cpu(block->bb_numrecs))
1886 xfs_btree_readahead(cur, lev, XFS_BTCUR_RIGHTRA);
1891 ASSERT(lev < cur->bc_nlevels);
1896 for (bp = cur->bc_bufs[lev], block = XFS_BUF_TO_INOBT_BLOCK(bp);
1900 agbno = be32_to_cpu(*XFS_INOBT_PTR_ADDR(block, cur->bc_ptrs[lev], cur));
1901 if ((error = xfs_btree_read_bufs(cur->bc_mp, cur->bc_tp,
1902 cur->bc_private.i.agno, agbno, 0, &bp,
1906 xfs_btree_setbuf(cur, lev, bp);
1908 if ((error = xfs_btree_check_sblock(cur, block, lev, bp)))
1910 cur->bc_ptrs[lev] = 1;
1917 * Insert the current record at the point referenced by cur.
1922 xfs_btree_cur_t *cur, /* btree cursor */
1935 INT_SET(nrec.ir_startino, ARCH_CONVERT, cur->bc_rec.i.ir_startino);
1936 INT_SET(nrec.ir_freecount, ARCH_CONVERT, cur->bc_rec.i.ir_freecount);
1937 INT_SET(nrec.ir_free, ARCH_CONVERT, cur->bc_rec.i.ir_free);
1939 pcur = cur;
1952 if (pcur != cur)
1961 if (pcur != cur && (ncur || nbno == NULLAGBLOCK)) {
1962 cur->bc_nlevels = pcur->bc_nlevels;
1978 * Lookup the record equal to ino in the btree given by cur.
1982 xfs_btree_cur_t *cur, /* btree cursor */
1988 cur->bc_rec.i.ir_startino = ino;
1989 cur->bc_rec.i.ir_freecount = fcnt;
1990 cur->bc_rec.i.ir_free = free;
1991 return xfs_inobt_lookup(cur, XFS_LOOKUP_EQ, stat);
1996 * in the btree given by cur.
2000 xfs_btree_cur_t *cur, /* btree cursor */
2006 cur->bc_rec.i.ir_startino = ino;
2007 cur->bc_rec.i.ir_freecount = fcnt;
2008 cur->bc_rec.i.ir_free = free;
2009 return xfs_inobt_lookup(cur, XFS_LOOKUP_GE, stat);
2014 * in the btree given by cur.
2018 xfs_btree_cur_t *cur, /* btree cursor */
2024 cur->bc_rec.i.ir_startino = ino;
2025 cur->bc_rec.i.ir_freecount = fcnt;
2026 cur->bc_rec.i.ir_free = free;
2027 return xfs_inobt_lookup(cur, XFS_LOOKUP_LE, stat);
2031 * Update the record referred to by cur, to the value given
2037 xfs_btree_cur_t *cur, /* btree cursor */
2051 bp = cur->bc_bufs[0];
2054 if ((error = xfs_btree_check_sblock(cur, block, 0, bp)))
2060 ptr = cur->bc_ptrs[0];
2061 rp = XFS_INOBT_REC_ADDR(block, ptr, cur);
2068 xfs_inobt_log_recs(cur, bp, ptr, ptr);
2076 if ((error = xfs_inobt_updkey(cur, &key, 1)))