Lines Matching refs:bmap

106 static int nilfs_direct_insert(struct nilfs_bmap *bmap, __u64 key, __u64 ptr)  in nilfs_direct_insert()  argument
115 if (nilfs_direct_get_ptr(bmap, key) != NILFS_BMAP_INVALID_PTR) in nilfs_direct_insert()
118 if (NILFS_BMAP_USE_VBN(bmap)) { in nilfs_direct_insert()
119 req.bpr_ptr = nilfs_direct_find_target_v(bmap, key); in nilfs_direct_insert()
120 dat = nilfs_bmap_get_dat(bmap); in nilfs_direct_insert()
122 ret = nilfs_bmap_prepare_alloc_ptr(bmap, &req, dat); in nilfs_direct_insert()
128 nilfs_bmap_commit_alloc_ptr(bmap, &req, dat); in nilfs_direct_insert()
129 nilfs_direct_set_ptr(bmap, key, req.bpr_ptr); in nilfs_direct_insert()
131 if (!nilfs_bmap_dirty(bmap)) in nilfs_direct_insert()
132 nilfs_bmap_set_dirty(bmap); in nilfs_direct_insert()
134 if (NILFS_BMAP_USE_VBN(bmap)) in nilfs_direct_insert()
135 nilfs_bmap_set_target_v(bmap, key, req.bpr_ptr); in nilfs_direct_insert()
137 nilfs_inode_add_blocks(bmap->b_inode, 1); in nilfs_direct_insert()
142 static int nilfs_direct_delete(struct nilfs_bmap *bmap, __u64 key) in nilfs_direct_delete() argument
149 nilfs_direct_get_ptr(bmap, key) == NILFS_BMAP_INVALID_PTR) in nilfs_direct_delete()
152 dat = NILFS_BMAP_USE_VBN(bmap) ? nilfs_bmap_get_dat(bmap) : NULL; in nilfs_direct_delete()
153 req.bpr_ptr = nilfs_direct_get_ptr(bmap, key); in nilfs_direct_delete()
155 ret = nilfs_bmap_prepare_end_ptr(bmap, &req, dat); in nilfs_direct_delete()
157 nilfs_bmap_commit_end_ptr(bmap, &req, dat); in nilfs_direct_delete()
158 nilfs_direct_set_ptr(bmap, key, NILFS_BMAP_INVALID_PTR); in nilfs_direct_delete()
159 nilfs_inode_sub_blocks(bmap->b_inode, 1); in nilfs_direct_delete()
197 static int nilfs_direct_check_insert(const struct nilfs_bmap *bmap, __u64 key) in nilfs_direct_check_insert() argument
223 int nilfs_direct_delete_and_convert(struct nilfs_bmap *bmap, in nilfs_direct_delete_and_convert() argument
232 ret = bmap->b_ops->bop_delete(bmap, key); in nilfs_direct_delete_and_convert()
237 if (bmap->b_ops->bop_clear != NULL) in nilfs_direct_delete_and_convert()
238 bmap->b_ops->bop_clear(bmap); in nilfs_direct_delete_and_convert()
241 dptrs = nilfs_direct_dptrs(bmap); in nilfs_direct_delete_and_convert()
252 nilfs_direct_init(bmap); in nilfs_direct_delete_and_convert()
256 static int nilfs_direct_propagate(struct nilfs_bmap *bmap, in nilfs_direct_propagate() argument
265 if (!NILFS_BMAP_USE_VBN(bmap)) in nilfs_direct_propagate()
268 dat = nilfs_bmap_get_dat(bmap); in nilfs_direct_propagate()
269 key = nilfs_bmap_data_get_key(bmap, bh); in nilfs_direct_propagate()
270 ptr = nilfs_direct_get_ptr(bmap, key); in nilfs_direct_propagate()
278 bmap->b_ptr_type == NILFS_BMAP_PTR_VS); in nilfs_direct_propagate()
280 nilfs_direct_set_ptr(bmap, key, newreq.pr_entry_nr); in nilfs_direct_propagate()
321 static int nilfs_direct_assign(struct nilfs_bmap *bmap, in nilfs_direct_assign() argument
329 key = nilfs_bmap_data_get_key(bmap, *bh); in nilfs_direct_assign()
331 nilfs_msg(bmap->b_inode->i_sb, KERN_CRIT, in nilfs_direct_assign()
333 bmap->b_inode->i_ino, (unsigned long long)key); in nilfs_direct_assign()
336 ptr = nilfs_direct_get_ptr(bmap, key); in nilfs_direct_assign()
338 nilfs_msg(bmap->b_inode->i_sb, KERN_CRIT, in nilfs_direct_assign()
340 bmap->b_inode->i_ino, (unsigned long long)ptr); in nilfs_direct_assign()
344 return NILFS_BMAP_USE_VBN(bmap) ? in nilfs_direct_assign()
345 nilfs_direct_assign_v(bmap, key, ptr, bh, blocknr, binfo) : in nilfs_direct_assign()
346 nilfs_direct_assign_p(bmap, key, ptr, bh, blocknr, binfo); in nilfs_direct_assign()
372 int nilfs_direct_init(struct nilfs_bmap *bmap) in nilfs_direct_init() argument
374 bmap->b_ops = &nilfs_direct_ops; in nilfs_direct_init()