Lines Matching refs:bmap

111 static int nilfs_direct_insert(struct nilfs_bmap *bmap, __u64 key, __u64 ptr)  in nilfs_direct_insert()  argument
120 if (nilfs_direct_get_ptr(bmap, key) != NILFS_BMAP_INVALID_PTR) in nilfs_direct_insert()
123 if (NILFS_BMAP_USE_VBN(bmap)) { in nilfs_direct_insert()
124 req.bpr_ptr = nilfs_direct_find_target_v(bmap, key); in nilfs_direct_insert()
125 dat = nilfs_bmap_get_dat(bmap); in nilfs_direct_insert()
127 ret = nilfs_bmap_prepare_alloc_ptr(bmap, &req, dat); in nilfs_direct_insert()
133 nilfs_bmap_commit_alloc_ptr(bmap, &req, dat); in nilfs_direct_insert()
134 nilfs_direct_set_ptr(bmap, key, req.bpr_ptr); in nilfs_direct_insert()
136 if (!nilfs_bmap_dirty(bmap)) in nilfs_direct_insert()
137 nilfs_bmap_set_dirty(bmap); in nilfs_direct_insert()
139 if (NILFS_BMAP_USE_VBN(bmap)) in nilfs_direct_insert()
140 nilfs_bmap_set_target_v(bmap, key, req.bpr_ptr); in nilfs_direct_insert()
142 nilfs_inode_add_blocks(bmap->b_inode, 1); in nilfs_direct_insert()
147 static int nilfs_direct_delete(struct nilfs_bmap *bmap, __u64 key) in nilfs_direct_delete() argument
154 nilfs_direct_get_ptr(bmap, key) == NILFS_BMAP_INVALID_PTR) in nilfs_direct_delete()
157 dat = NILFS_BMAP_USE_VBN(bmap) ? nilfs_bmap_get_dat(bmap) : NULL; in nilfs_direct_delete()
158 req.bpr_ptr = nilfs_direct_get_ptr(bmap, key); in nilfs_direct_delete()
160 ret = nilfs_bmap_prepare_end_ptr(bmap, &req, dat); in nilfs_direct_delete()
162 nilfs_bmap_commit_end_ptr(bmap, &req, dat); in nilfs_direct_delete()
163 nilfs_direct_set_ptr(bmap, key, NILFS_BMAP_INVALID_PTR); in nilfs_direct_delete()
164 nilfs_inode_sub_blocks(bmap->b_inode, 1); in nilfs_direct_delete()
202 static int nilfs_direct_check_insert(const struct nilfs_bmap *bmap, __u64 key) in nilfs_direct_check_insert() argument
228 int nilfs_direct_delete_and_convert(struct nilfs_bmap *bmap, in nilfs_direct_delete_and_convert() argument
237 ret = bmap->b_ops->bop_delete(bmap, key); in nilfs_direct_delete_and_convert()
242 if (bmap->b_ops->bop_clear != NULL) in nilfs_direct_delete_and_convert()
243 bmap->b_ops->bop_clear(bmap); in nilfs_direct_delete_and_convert()
246 dptrs = nilfs_direct_dptrs(bmap); in nilfs_direct_delete_and_convert()
257 nilfs_direct_init(bmap); in nilfs_direct_delete_and_convert()
261 static int nilfs_direct_propagate(struct nilfs_bmap *bmap, in nilfs_direct_propagate() argument
270 if (!NILFS_BMAP_USE_VBN(bmap)) in nilfs_direct_propagate()
273 dat = nilfs_bmap_get_dat(bmap); in nilfs_direct_propagate()
274 key = nilfs_bmap_data_get_key(bmap, bh); in nilfs_direct_propagate()
275 ptr = nilfs_direct_get_ptr(bmap, key); in nilfs_direct_propagate()
283 bmap->b_ptr_type == NILFS_BMAP_PTR_VS); in nilfs_direct_propagate()
285 nilfs_direct_set_ptr(bmap, key, newreq.pr_entry_nr); in nilfs_direct_propagate()
327 static int nilfs_direct_assign(struct nilfs_bmap *bmap, in nilfs_direct_assign() argument
335 key = nilfs_bmap_data_get_key(bmap, *bh); in nilfs_direct_assign()
337 nilfs_crit(bmap->b_inode->i_sb, in nilfs_direct_assign()
340 bmap->b_inode->i_ino, (unsigned long long)key); in nilfs_direct_assign()
343 ptr = nilfs_direct_get_ptr(bmap, key); in nilfs_direct_assign()
345 nilfs_crit(bmap->b_inode->i_sb, in nilfs_direct_assign()
348 bmap->b_inode->i_ino, (unsigned long long)ptr); in nilfs_direct_assign()
352 return NILFS_BMAP_USE_VBN(bmap) ? in nilfs_direct_assign()
353 nilfs_direct_assign_v(bmap, key, ptr, bh, blocknr, binfo) : in nilfs_direct_assign()
354 nilfs_direct_assign_p(bmap, key, ptr, bh, blocknr, binfo); in nilfs_direct_assign()
380 int nilfs_direct_init(struct nilfs_bmap *bmap) in nilfs_direct_init() argument
382 bmap->b_ops = &nilfs_direct_ops; in nilfs_direct_init()