Lines Matching refs:btree

71 static int nilfs_btree_get_new_block(const struct nilfs_bmap *btree,  in nilfs_btree_get_new_block()  argument
74 struct address_space *btnc = &NILFS_BMAP_I(btree)->i_btnode_cache; in nilfs_btree_get_new_block()
124 static int nilfs_btree_node_size(const struct nilfs_bmap *btree) in nilfs_btree_node_size() argument
126 return 1 << btree->b_inode->i_blkbits; in nilfs_btree_node_size()
129 static int nilfs_btree_nchildren_per_block(const struct nilfs_bmap *btree) in nilfs_btree_nchildren_per_block() argument
131 return btree->b_nchildren_per_block; in nilfs_btree_nchildren_per_block()
416 nilfs_btree_get_root(const struct nilfs_bmap *btree) in nilfs_btree_get_root() argument
418 return (struct nilfs_btree_node *)btree->b_u.u_data; in nilfs_btree_get_root()
433 static int nilfs_btree_height(const struct nilfs_bmap *btree) in nilfs_btree_height() argument
435 return nilfs_btree_node_get_level(nilfs_btree_get_root(btree)) + 1; in nilfs_btree_height()
439 nilfs_btree_get_node(const struct nilfs_bmap *btree, in nilfs_btree_get_node() argument
445 if (level == nilfs_btree_height(btree) - 1) { in nilfs_btree_get_node()
446 node = nilfs_btree_get_root(btree); in nilfs_btree_get_node()
450 *ncmaxp = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_get_node()
474 static int __nilfs_btree_get_block(const struct nilfs_bmap *btree, __u64 ptr, in __nilfs_btree_get_block() argument
478 struct address_space *btnc = &NILFS_BMAP_I(btree)->i_btnode_cache; in __nilfs_btree_get_block()
529 static int nilfs_btree_get_block(const struct nilfs_bmap *btree, __u64 ptr, in nilfs_btree_get_block() argument
532 return __nilfs_btree_get_block(btree, ptr, bhp, NULL); in nilfs_btree_get_block()
535 static int nilfs_btree_do_lookup(const struct nilfs_bmap *btree, in nilfs_btree_do_lookup() argument
545 node = nilfs_btree_get_root(btree); in nilfs_btree_do_lookup()
556 ncmax = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_do_lookup()
561 p.node = nilfs_btree_get_node(btree, path, level + 1, in nilfs_btree_do_lookup()
567 ret = __nilfs_btree_get_block(btree, ptr, &path[level].bp_bh, in nilfs_btree_do_lookup()
597 static int nilfs_btree_do_lookup_last(const struct nilfs_bmap *btree, in nilfs_btree_do_lookup_last() argument
605 node = nilfs_btree_get_root(btree); in nilfs_btree_do_lookup_last()
614 ncmax = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_do_lookup_last()
617 ret = nilfs_btree_get_block(btree, ptr, &path[level].bp_bh); in nilfs_btree_do_lookup_last()
646 static int nilfs_btree_get_next_key(const struct nilfs_bmap *btree, in nilfs_btree_get_next_key() argument
651 int maxlevel = nilfs_btree_height(btree) - 1; in nilfs_btree_get_next_key()
658 node = nilfs_btree_get_root(btree); in nilfs_btree_get_next_key()
674 static int nilfs_btree_lookup(const struct nilfs_bmap *btree, in nilfs_btree_lookup() argument
684 ret = nilfs_btree_do_lookup(btree, path, key, ptrp, level, 0); in nilfs_btree_lookup()
691 static int nilfs_btree_lookup_contig(const struct nilfs_bmap *btree, in nilfs_btree_lookup_contig() argument
707 ret = nilfs_btree_do_lookup(btree, path, key, &ptr, level, 1); in nilfs_btree_lookup_contig()
711 if (NILFS_BMAP_USE_VBN(btree)) { in nilfs_btree_lookup_contig()
712 dat = nilfs_bmap_get_dat(btree); in nilfs_btree_lookup_contig()
722 maxlevel = nilfs_btree_height(btree) - 1; in nilfs_btree_lookup_contig()
723 node = nilfs_btree_get_node(btree, path, level, &ncmax); in nilfs_btree_lookup_contig()
746 p.node = nilfs_btree_get_node(btree, path, level + 1, &p.ncmax); in nilfs_btree_lookup_contig()
758 ret = __nilfs_btree_get_block(btree, ptr2, &path[level].bp_bh, in nilfs_btree_lookup_contig()
763 ncmax = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_lookup_contig()
775 static void nilfs_btree_promote_key(struct nilfs_bmap *btree, in nilfs_btree_promote_key() argument
779 if (level < nilfs_btree_height(btree) - 1) { in nilfs_btree_promote_key()
787 (++level < nilfs_btree_height(btree) - 1)); in nilfs_btree_promote_key()
791 if (level == nilfs_btree_height(btree) - 1) { in nilfs_btree_promote_key()
792 nilfs_btree_node_set_key(nilfs_btree_get_root(btree), in nilfs_btree_promote_key()
797 static void nilfs_btree_do_insert(struct nilfs_bmap *btree, in nilfs_btree_do_insert() argument
804 if (level < nilfs_btree_height(btree) - 1) { in nilfs_btree_do_insert()
806 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_do_insert()
813 nilfs_btree_promote_key(btree, path, level + 1, in nilfs_btree_do_insert()
817 node = nilfs_btree_get_root(btree); in nilfs_btree_do_insert()
824 static void nilfs_btree_carry_left(struct nilfs_bmap *btree, in nilfs_btree_carry_left() argument
835 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_carry_left()
852 nilfs_btree_promote_key(btree, path, level + 1, in nilfs_btree_carry_left()
867 nilfs_btree_do_insert(btree, path, level, keyp, ptrp); in nilfs_btree_carry_left()
870 static void nilfs_btree_carry_right(struct nilfs_bmap *btree, in nilfs_btree_carry_right() argument
881 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_carry_right()
899 nilfs_btree_promote_key(btree, path, level + 1, in nilfs_btree_carry_right()
914 nilfs_btree_do_insert(btree, path, level, keyp, ptrp); in nilfs_btree_carry_right()
917 static void nilfs_btree_split(struct nilfs_bmap *btree, in nilfs_btree_split() argument
929 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_split()
960 nilfs_btree_do_insert(btree, path, level, keyp, ptrp); in nilfs_btree_split()
972 static void nilfs_btree_grow(struct nilfs_bmap *btree, in nilfs_btree_grow() argument
979 root = nilfs_btree_get_root(btree); in nilfs_btree_grow()
981 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_grow()
995 nilfs_btree_do_insert(btree, path, level, keyp, ptrp); in nilfs_btree_grow()
1001 static __u64 nilfs_btree_find_near(const struct nilfs_bmap *btree, in nilfs_btree_find_near() argument
1013 node = nilfs_btree_get_node(btree, path, level, &ncmax); in nilfs_btree_find_near()
1021 if (level <= nilfs_btree_height(btree) - 1) { in nilfs_btree_find_near()
1022 node = nilfs_btree_get_node(btree, path, level, &ncmax); in nilfs_btree_find_near()
1030 static __u64 nilfs_btree_find_target_v(const struct nilfs_bmap *btree, in nilfs_btree_find_target_v() argument
1036 ptr = nilfs_bmap_find_target_seq(btree, key); in nilfs_btree_find_target_v()
1041 ptr = nilfs_btree_find_near(btree, path); in nilfs_btree_find_target_v()
1047 return nilfs_bmap_find_target_in_group(btree); in nilfs_btree_find_target_v()
1050 static int nilfs_btree_prepare_insert(struct nilfs_bmap *btree, in nilfs_btree_prepare_insert() argument
1065 if (NILFS_BMAP_USE_VBN(btree)) { in nilfs_btree_prepare_insert()
1067 nilfs_btree_find_target_v(btree, path, key); in nilfs_btree_prepare_insert()
1068 dat = nilfs_bmap_get_dat(btree); in nilfs_btree_prepare_insert()
1071 ret = nilfs_bmap_prepare_alloc_ptr(btree, &path[level].bp_newreq, dat); in nilfs_btree_prepare_insert()
1075 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_prepare_insert()
1078 level < nilfs_btree_height(btree) - 1; in nilfs_btree_prepare_insert()
1087 parent = nilfs_btree_get_node(btree, path, level + 1, &ncmax); in nilfs_btree_prepare_insert()
1094 ret = nilfs_btree_get_block(btree, sibptr, &bh); in nilfs_btree_prepare_insert()
1112 ret = nilfs_btree_get_block(btree, sibptr, &bh); in nilfs_btree_prepare_insert()
1129 ret = nilfs_bmap_prepare_alloc_ptr(btree, in nilfs_btree_prepare_insert()
1133 ret = nilfs_btree_get_new_block(btree, in nilfs_btree_prepare_insert()
1148 node = nilfs_btree_get_root(btree); in nilfs_btree_prepare_insert()
1158 ret = nilfs_bmap_prepare_alloc_ptr(btree, &path[level].bp_newreq, dat); in nilfs_btree_prepare_insert()
1161 ret = nilfs_btree_get_new_block(btree, path[level].bp_newreq.bpr_ptr, in nilfs_btree_prepare_insert()
1184 nilfs_bmap_abort_alloc_ptr(btree, &path[level].bp_newreq, dat); in nilfs_btree_prepare_insert()
1188 nilfs_bmap_abort_alloc_ptr(btree, &path[level].bp_newreq, dat); in nilfs_btree_prepare_insert()
1192 nilfs_bmap_abort_alloc_ptr(btree, &path[level].bp_newreq, dat); in nilfs_btree_prepare_insert()
1199 static void nilfs_btree_commit_insert(struct nilfs_bmap *btree, in nilfs_btree_commit_insert() argument
1208 if (NILFS_BMAP_USE_VBN(btree)) { in nilfs_btree_commit_insert()
1209 nilfs_bmap_set_target_v(btree, key, ptr); in nilfs_btree_commit_insert()
1210 dat = nilfs_bmap_get_dat(btree); in nilfs_btree_commit_insert()
1214 nilfs_bmap_commit_alloc_ptr(btree, in nilfs_btree_commit_insert()
1216 path[level].bp_op(btree, path, level, &key, &ptr); in nilfs_btree_commit_insert()
1219 if (!nilfs_bmap_dirty(btree)) in nilfs_btree_commit_insert()
1220 nilfs_bmap_set_dirty(btree); in nilfs_btree_commit_insert()
1223 static int nilfs_btree_insert(struct nilfs_bmap *btree, __u64 key, __u64 ptr) in nilfs_btree_insert() argument
1233 ret = nilfs_btree_do_lookup(btree, path, key, NULL, in nilfs_btree_insert()
1241 ret = nilfs_btree_prepare_insert(btree, path, &level, key, ptr, &stats); in nilfs_btree_insert()
1244 nilfs_btree_commit_insert(btree, path, level, key, ptr); in nilfs_btree_insert()
1245 nilfs_inode_add_blocks(btree->b_inode, stats.bs_nblocks); in nilfs_btree_insert()
1252 static void nilfs_btree_do_delete(struct nilfs_bmap *btree, in nilfs_btree_do_delete() argument
1259 if (level < nilfs_btree_height(btree) - 1) { in nilfs_btree_do_delete()
1261 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_do_delete()
1267 nilfs_btree_promote_key(btree, path, level + 1, in nilfs_btree_do_delete()
1270 node = nilfs_btree_get_root(btree); in nilfs_btree_do_delete()
1277 static void nilfs_btree_borrow_left(struct nilfs_bmap *btree, in nilfs_btree_borrow_left() argument
1284 nilfs_btree_do_delete(btree, path, level, keyp, ptrp); in nilfs_btree_borrow_left()
1290 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_borrow_left()
1301 nilfs_btree_promote_key(btree, path, level + 1, in nilfs_btree_borrow_left()
1309 static void nilfs_btree_borrow_right(struct nilfs_bmap *btree, in nilfs_btree_borrow_right() argument
1316 nilfs_btree_do_delete(btree, path, level, keyp, ptrp); in nilfs_btree_borrow_right()
1322 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_borrow_right()
1334 nilfs_btree_promote_key(btree, path, level + 1, in nilfs_btree_borrow_right()
1342 static void nilfs_btree_concat_left(struct nilfs_bmap *btree, in nilfs_btree_concat_left() argument
1349 nilfs_btree_do_delete(btree, path, level, keyp, ptrp); in nilfs_btree_concat_left()
1353 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_concat_left()
1368 static void nilfs_btree_concat_right(struct nilfs_bmap *btree, in nilfs_btree_concat_right() argument
1375 nilfs_btree_do_delete(btree, path, level, keyp, ptrp); in nilfs_btree_concat_right()
1379 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_concat_right()
1393 static void nilfs_btree_shrink(struct nilfs_bmap *btree, in nilfs_btree_shrink() argument
1400 nilfs_btree_do_delete(btree, path, level, keyp, ptrp); in nilfs_btree_shrink()
1402 root = nilfs_btree_get_root(btree); in nilfs_btree_shrink()
1404 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_shrink()
1417 static void nilfs_btree_nop(struct nilfs_bmap *btree, in nilfs_btree_nop() argument
1423 static int nilfs_btree_prepare_delete(struct nilfs_bmap *btree, in nilfs_btree_prepare_delete() argument
1436 ncmin = NILFS_BTREE_NODE_NCHILDREN_MIN(nilfs_btree_node_size(btree)); in nilfs_btree_prepare_delete()
1437 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_prepare_delete()
1440 level < nilfs_btree_height(btree) - 1; in nilfs_btree_prepare_delete()
1445 ret = nilfs_bmap_prepare_end_ptr(btree, in nilfs_btree_prepare_delete()
1456 parent = nilfs_btree_get_node(btree, path, level + 1, &ncmax); in nilfs_btree_prepare_delete()
1464 ret = nilfs_btree_get_block(btree, sibptr, &bh); in nilfs_btree_prepare_delete()
1484 ret = nilfs_btree_get_block(btree, sibptr, &bh); in nilfs_btree_prepare_delete()
1510 WARN_ON(level != nilfs_btree_height(btree) - 2); in nilfs_btree_prepare_delete()
1531 node = nilfs_btree_get_root(btree); in nilfs_btree_prepare_delete()
1536 ret = nilfs_bmap_prepare_end_ptr(btree, &path[level].bp_oldreq, dat); in nilfs_btree_prepare_delete()
1547 nilfs_bmap_abort_end_ptr(btree, &path[level].bp_oldreq, dat); in nilfs_btree_prepare_delete()
1551 nilfs_bmap_abort_end_ptr(btree, &path[level].bp_oldreq, dat); in nilfs_btree_prepare_delete()
1558 static void nilfs_btree_commit_delete(struct nilfs_bmap *btree, in nilfs_btree_commit_delete() argument
1565 nilfs_bmap_commit_end_ptr(btree, &path[level].bp_oldreq, dat); in nilfs_btree_commit_delete()
1566 path[level].bp_op(btree, path, level, NULL, NULL); in nilfs_btree_commit_delete()
1569 if (!nilfs_bmap_dirty(btree)) in nilfs_btree_commit_delete()
1570 nilfs_bmap_set_dirty(btree); in nilfs_btree_commit_delete()
1573 static int nilfs_btree_delete(struct nilfs_bmap *btree, __u64 key) in nilfs_btree_delete() argument
1585 ret = nilfs_btree_do_lookup(btree, path, key, NULL, in nilfs_btree_delete()
1591 dat = NILFS_BMAP_USE_VBN(btree) ? nilfs_bmap_get_dat(btree) : NULL; in nilfs_btree_delete()
1593 ret = nilfs_btree_prepare_delete(btree, path, &level, &stats, dat); in nilfs_btree_delete()
1596 nilfs_btree_commit_delete(btree, path, level, dat); in nilfs_btree_delete()
1597 nilfs_inode_sub_blocks(btree->b_inode, stats.bs_nblocks); in nilfs_btree_delete()
1604 static int nilfs_btree_seek_key(const struct nilfs_bmap *btree, __u64 start, in nilfs_btree_seek_key() argument
1615 ret = nilfs_btree_do_lookup(btree, path, start, NULL, minlevel, 0); in nilfs_btree_seek_key()
1619 ret = nilfs_btree_get_next_key(btree, path, minlevel, keyp); in nilfs_btree_seek_key()
1625 static int nilfs_btree_last_key(const struct nilfs_bmap *btree, __u64 *keyp) in nilfs_btree_last_key() argument
1634 ret = nilfs_btree_do_lookup_last(btree, path, keyp, NULL); in nilfs_btree_last_key()
1641 static int nilfs_btree_check_delete(struct nilfs_bmap *btree, __u64 key) in nilfs_btree_check_delete() argument
1649 root = nilfs_btree_get_root(btree); in nilfs_btree_check_delete()
1650 switch (nilfs_btree_height(btree)) { in nilfs_btree_check_delete()
1661 ret = nilfs_btree_get_block(btree, ptr, &bh); in nilfs_btree_check_delete()
1680 static int nilfs_btree_gather_data(struct nilfs_bmap *btree, in nilfs_btree_gather_data() argument
1690 root = nilfs_btree_get_root(btree); in nilfs_btree_gather_data()
1691 switch (nilfs_btree_height(btree)) { in nilfs_btree_gather_data()
1702 ret = nilfs_btree_get_block(btree, ptr, &bh); in nilfs_btree_gather_data()
1706 ncmax = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_gather_data()
1730 nilfs_btree_prepare_convert_and_insert(struct nilfs_bmap *btree, __u64 key, in nilfs_btree_prepare_convert_and_insert() argument
1744 if (NILFS_BMAP_USE_VBN(btree)) { in nilfs_btree_prepare_convert_and_insert()
1745 dreq->bpr_ptr = nilfs_btree_find_target_v(btree, NULL, key); in nilfs_btree_prepare_convert_and_insert()
1746 dat = nilfs_bmap_get_dat(btree); in nilfs_btree_prepare_convert_and_insert()
1749 ret = nilfs_bmap_prepare_alloc_ptr(btree, dreq, dat); in nilfs_btree_prepare_convert_and_insert()
1757 ret = nilfs_bmap_prepare_alloc_ptr(btree, nreq, dat); in nilfs_btree_prepare_convert_and_insert()
1761 ret = nilfs_btree_get_new_block(btree, nreq->bpr_ptr, &bh); in nilfs_btree_prepare_convert_and_insert()
1774 nilfs_bmap_abort_alloc_ptr(btree, nreq, dat); in nilfs_btree_prepare_convert_and_insert()
1776 nilfs_bmap_abort_alloc_ptr(btree, dreq, dat); in nilfs_btree_prepare_convert_and_insert()
1783 nilfs_btree_commit_convert_and_insert(struct nilfs_bmap *btree, in nilfs_btree_commit_convert_and_insert() argument
1797 if (btree->b_ops->bop_clear != NULL) in nilfs_btree_commit_convert_and_insert()
1798 btree->b_ops->bop_clear(btree); in nilfs_btree_commit_convert_and_insert()
1804 dat = NILFS_BMAP_USE_VBN(btree) ? nilfs_bmap_get_dat(btree) : NULL; in nilfs_btree_commit_convert_and_insert()
1805 __nilfs_btree_init(btree); in nilfs_btree_commit_convert_and_insert()
1807 nilfs_bmap_commit_alloc_ptr(btree, dreq, dat); in nilfs_btree_commit_convert_and_insert()
1808 nilfs_bmap_commit_alloc_ptr(btree, nreq, dat); in nilfs_btree_commit_convert_and_insert()
1812 ncblk = nilfs_btree_nchildren_per_block(btree); in nilfs_btree_commit_convert_and_insert()
1817 if (!nilfs_bmap_dirty(btree)) in nilfs_btree_commit_convert_and_insert()
1818 nilfs_bmap_set_dirty(btree); in nilfs_btree_commit_convert_and_insert()
1823 node = nilfs_btree_get_root(btree); in nilfs_btree_commit_convert_and_insert()
1829 nilfs_bmap_commit_alloc_ptr(btree, dreq, dat); in nilfs_btree_commit_convert_and_insert()
1832 node = nilfs_btree_get_root(btree); in nilfs_btree_commit_convert_and_insert()
1838 if (!nilfs_bmap_dirty(btree)) in nilfs_btree_commit_convert_and_insert()
1839 nilfs_bmap_set_dirty(btree); in nilfs_btree_commit_convert_and_insert()
1842 if (NILFS_BMAP_USE_VBN(btree)) in nilfs_btree_commit_convert_and_insert()
1843 nilfs_bmap_set_target_v(btree, key, dreq->bpr_ptr); in nilfs_btree_commit_convert_and_insert()
1855 int nilfs_btree_convert_and_insert(struct nilfs_bmap *btree, in nilfs_btree_convert_and_insert() argument
1868 1 << btree->b_inode->i_blkbits)) { in nilfs_btree_convert_and_insert()
1877 ret = nilfs_btree_prepare_convert_and_insert(btree, key, di, ni, &bh, in nilfs_btree_convert_and_insert()
1881 nilfs_btree_commit_convert_and_insert(btree, key, ptr, keys, ptrs, n, in nilfs_btree_convert_and_insert()
1883 nilfs_inode_add_blocks(btree->b_inode, stats.bs_nblocks); in nilfs_btree_convert_and_insert()
1887 static int nilfs_btree_propagate_p(struct nilfs_bmap *btree, in nilfs_btree_propagate_p() argument
1892 while ((++level < nilfs_btree_height(btree) - 1) && in nilfs_btree_propagate_p()
1899 static int nilfs_btree_prepare_update_v(struct nilfs_bmap *btree, in nilfs_btree_prepare_update_v() argument
1906 parent = nilfs_btree_get_node(btree, path, level + 1, &ncmax); in nilfs_btree_prepare_update_v()
1921 &NILFS_BMAP_I(btree)->i_btnode_cache, in nilfs_btree_prepare_update_v()
1934 static void nilfs_btree_commit_update_v(struct nilfs_bmap *btree, in nilfs_btree_commit_update_v() argument
1943 btree->b_ptr_type == NILFS_BMAP_PTR_VS); in nilfs_btree_commit_update_v()
1947 &NILFS_BMAP_I(btree)->i_btnode_cache, in nilfs_btree_commit_update_v()
1953 parent = nilfs_btree_get_node(btree, path, level + 1, &ncmax); in nilfs_btree_commit_update_v()
1958 static void nilfs_btree_abort_update_v(struct nilfs_bmap *btree, in nilfs_btree_abort_update_v() argument
1966 &NILFS_BMAP_I(btree)->i_btnode_cache, in nilfs_btree_abort_update_v()
1970 static int nilfs_btree_prepare_propagate_v(struct nilfs_bmap *btree, in nilfs_btree_prepare_propagate_v() argument
1979 ret = nilfs_btree_prepare_update_v(btree, path, level, dat); in nilfs_btree_prepare_propagate_v()
1983 while ((++level < nilfs_btree_height(btree) - 1) && in nilfs_btree_prepare_propagate_v()
1987 ret = nilfs_btree_prepare_update_v(btree, path, level, dat); in nilfs_btree_prepare_propagate_v()
1999 nilfs_btree_abort_update_v(btree, path, level, dat); in nilfs_btree_prepare_propagate_v()
2001 nilfs_btree_abort_update_v(btree, path, level, dat); in nilfs_btree_prepare_propagate_v()
2005 static void nilfs_btree_commit_propagate_v(struct nilfs_bmap *btree, in nilfs_btree_commit_propagate_v() argument
2014 nilfs_btree_commit_update_v(btree, path, minlevel, dat); in nilfs_btree_commit_propagate_v()
2017 nilfs_btree_commit_update_v(btree, path, level, dat); in nilfs_btree_commit_propagate_v()
2020 static int nilfs_btree_propagate_v(struct nilfs_bmap *btree, in nilfs_btree_propagate_v() argument
2026 struct inode *dat = nilfs_bmap_get_dat(btree); in nilfs_btree_propagate_v()
2032 ret = nilfs_btree_prepare_propagate_v(btree, path, level, &maxlevel, in nilfs_btree_propagate_v()
2038 parent = nilfs_btree_get_node(btree, path, level + 1, &ncmax); in nilfs_btree_propagate_v()
2047 nilfs_btree_commit_propagate_v(btree, path, level, maxlevel, bh, dat); in nilfs_btree_propagate_v()
2055 static int nilfs_btree_propagate(struct nilfs_bmap *btree, in nilfs_btree_propagate() argument
2074 key = nilfs_bmap_data_get_key(btree, bh); in nilfs_btree_propagate()
2078 ret = nilfs_btree_do_lookup(btree, path, key, NULL, level + 1, 0); in nilfs_btree_propagate()
2086 ret = NILFS_BMAP_USE_VBN(btree) ? in nilfs_btree_propagate()
2087 nilfs_btree_propagate_v(btree, path, level, bh) : in nilfs_btree_propagate()
2088 nilfs_btree_propagate_p(btree, path, level, bh); in nilfs_btree_propagate()
2096 static int nilfs_btree_propagate_gc(struct nilfs_bmap *btree, in nilfs_btree_propagate_gc() argument
2099 return nilfs_dat_mark_dirty(nilfs_bmap_get_dat(btree), bh->b_blocknr); in nilfs_btree_propagate_gc()
2102 static void nilfs_btree_add_dirty_buffer(struct nilfs_bmap *btree, in nilfs_btree_add_dirty_buffer() argument
2123 NILFS_BMAP_I(btree)->vfs_inode.i_ino, in nilfs_btree_add_dirty_buffer()
2138 static void nilfs_btree_lookup_dirty_buffers(struct nilfs_bmap *btree, in nilfs_btree_lookup_dirty_buffers() argument
2141 struct address_space *btcache = &NILFS_BMAP_I(btree)->i_btnode_cache; in nilfs_btree_lookup_dirty_buffers()
2161 nilfs_btree_add_dirty_buffer(btree, in nilfs_btree_lookup_dirty_buffers()
2175 static int nilfs_btree_assign_p(struct nilfs_bmap *btree, in nilfs_btree_assign_p() argument
2187 parent = nilfs_btree_get_node(btree, path, level + 1, &ncmax); in nilfs_btree_assign_p()
2195 &NILFS_BMAP_I(btree)->i_btnode_cache, in nilfs_btree_assign_p()
2200 &NILFS_BMAP_I(btree)->i_btnode_cache, in nilfs_btree_assign_p()
2216 static int nilfs_btree_assign_v(struct nilfs_bmap *btree, in nilfs_btree_assign_v() argument
2224 struct inode *dat = nilfs_bmap_get_dat(btree); in nilfs_btree_assign_v()
2230 parent = nilfs_btree_get_node(btree, path, level + 1, &ncmax); in nilfs_btree_assign_v()
2247 static int nilfs_btree_assign(struct nilfs_bmap *btree, in nilfs_btree_assign() argument
2266 key = nilfs_bmap_data_get_key(btree, *bh); in nilfs_btree_assign()
2270 ret = nilfs_btree_do_lookup(btree, path, key, NULL, level + 1, 0); in nilfs_btree_assign()
2276 ret = NILFS_BMAP_USE_VBN(btree) ? in nilfs_btree_assign()
2277 nilfs_btree_assign_v(btree, path, level, bh, blocknr, binfo) : in nilfs_btree_assign()
2278 nilfs_btree_assign_p(btree, path, level, bh, blocknr, binfo); in nilfs_btree_assign()
2286 static int nilfs_btree_assign_gc(struct nilfs_bmap *btree, in nilfs_btree_assign_gc() argument
2295 ret = nilfs_dat_move(nilfs_bmap_get_dat(btree), (*bh)->b_blocknr, in nilfs_btree_assign_gc()
2304 key = nilfs_bmap_data_get_key(btree, *bh); in nilfs_btree_assign_gc()
2313 static int nilfs_btree_mark(struct nilfs_bmap *btree, __u64 key, int level) in nilfs_btree_mark() argument
2324 ret = nilfs_btree_do_lookup(btree, path, key, &ptr, level + 1, 0); in nilfs_btree_mark()
2329 ret = nilfs_btree_get_block(btree, ptr, &bh); in nilfs_btree_mark()
2338 if (!nilfs_bmap_dirty(btree)) in nilfs_btree_mark()
2339 nilfs_bmap_set_dirty(btree); in nilfs_btree_mark()