Lines Matching refs:bh
34 struct buffer_head *bh; member
37 static inline void add_chain(Indirect *p, struct buffer_head *bh, __le32 *v) in add_chain() argument
40 p->bh = bh; in add_chain()
150 struct buffer_head *bh; in ext4_get_branch() local
166 bh = sb_getblk(sb, key); in ext4_get_branch()
167 if (unlikely(!bh)) { in ext4_get_branch()
172 if (!bh_uptodate_or_lock(bh)) { in ext4_get_branch()
173 if (ext4_read_bh(bh, 0, NULL) < 0) { in ext4_get_branch()
174 put_bh(bh); in ext4_get_branch()
178 if (ext4_check_indirect_blockref(inode, bh)) { in ext4_get_branch()
179 put_bh(bh); in ext4_get_branch()
184 add_chain(++p, bh, (__le32 *)bh->b_data + *++offsets); in ext4_get_branch()
220 __le32 *start = ind->bh ? (__le32 *) ind->bh->b_data : ei->i_data; in ext4_find_near()
230 if (ind->bh) in ext4_find_near()
231 return ind->bh->b_blocknr; in ext4_find_near()
333 struct buffer_head * bh; in ext4_alloc_branch() local
347 branch[i+1].bh = NULL; in ext4_alloc_branch()
357 bh = branch[i].bh = sb_getblk(ar->inode->i_sb, new_blocks[i-1]); in ext4_alloc_branch()
358 if (unlikely(!bh)) { in ext4_alloc_branch()
362 lock_buffer(bh); in ext4_alloc_branch()
363 BUFFER_TRACE(bh, "call get_create_access"); in ext4_alloc_branch()
365 bh, EXT4_JTR_NONE); in ext4_alloc_branch()
367 unlock_buffer(bh); in ext4_alloc_branch()
371 memset(bh->b_data, 0, bh->b_size); in ext4_alloc_branch()
372 p = branch[i].p = (__le32 *) bh->b_data + offsets[i]; in ext4_alloc_branch()
380 BUFFER_TRACE(bh, "marking uptodate"); in ext4_alloc_branch()
381 set_buffer_uptodate(bh); in ext4_alloc_branch()
382 unlock_buffer(bh); in ext4_alloc_branch()
384 BUFFER_TRACE(bh, "call ext4_handle_dirty_metadata"); in ext4_alloc_branch()
385 err = ext4_handle_dirty_metadata(handle, ar->inode, bh); in ext4_alloc_branch()
407 ext4_free_blocks(handle, ar->inode, branch[i+1].bh, in ext4_alloc_branch()
409 branch[i+1].bh ? EXT4_FREE_BLOCKS_FORGET : 0); in ext4_alloc_branch()
438 if (where->bh) { in ext4_splice_branch()
439 BUFFER_TRACE(where->bh, "get_write_access"); in ext4_splice_branch()
441 where->bh, EXT4_JTR_NONE); in ext4_splice_branch()
461 if (where->bh) { in ext4_splice_branch()
471 BUFFER_TRACE(where->bh, "call ext4_handle_dirty_metadata"); in ext4_splice_branch()
472 err = ext4_handle_dirty_metadata(handle, ar->inode, where->bh); in ext4_splice_branch()
493 ext4_free_blocks(handle, ar->inode, where[i].bh, 0, 1, in ext4_splice_branch()
665 BUFFER_TRACE(partial->bh, "call brelse"); in ext4_ind_map_blocks()
666 brelse(partial->bh); in ext4_ind_map_blocks()
689 struct buffer_head *bh, int *dropped) in ext4_ind_trunc_restart_fn() argument
693 if (bh) { in ext4_ind_trunc_restart_fn()
694 BUFFER_TRACE(bh, "call ext4_handle_dirty_metadata"); in ext4_ind_trunc_restart_fn()
695 err = ext4_handle_dirty_metadata(handle, inode, bh); in ext4_ind_trunc_restart_fn()
725 struct buffer_head *bh, in ext4_ind_truncate_ensure_credits() argument
733 ext4_ind_trunc_restart_fn(handle, inode, bh, &dropped)); in ext4_ind_truncate_ensure_credits()
738 if (bh) { in ext4_ind_truncate_ensure_credits()
739 BUFFER_TRACE(bh, "retaking write access"); in ext4_ind_truncate_ensure_credits()
740 ret = ext4_journal_get_write_access(handle, inode->i_sb, bh, in ext4_ind_truncate_ensure_credits()
818 for (p = partial; (p > chain) && all_zeroes((__le32 *) p->bh->b_data, p->p); p--) in ext4_find_shared()
838 brelse(partial->bh); in ext4_find_shared()
857 struct buffer_head *bh, in ext4_clear_blocks() argument
879 err = ext4_ind_truncate_ensure_credits(handle, inode, bh, in ext4_clear_blocks()
1010 struct buffer_head *bh; in ext4_free_branches() local
1027 bh = ext4_sb_bread(inode->i_sb, nr, 0); in ext4_free_branches()
1033 if (IS_ERR(bh)) { in ext4_free_branches()
1034 ext4_error_inode_block(inode, nr, -PTR_ERR(bh), in ext4_free_branches()
1040 BUFFER_TRACE(bh, "free child branches"); in ext4_free_branches()
1041 ext4_free_branches(handle, inode, bh, in ext4_free_branches()
1042 (__le32 *) bh->b_data, in ext4_free_branches()
1043 (__le32 *) bh->b_data + addr_per_block, in ext4_free_branches()
1045 brelse(bh); in ext4_free_branches()
1172 BUFFER_TRACE(partial->bh, "get_write_access"); in ext4_ind_truncate()
1173 ext4_free_branches(handle, inode, partial->bh, in ext4_ind_truncate()
1180 ext4_free_branches(handle, inode, partial->bh, partial->p + 1, in ext4_ind_truncate()
1181 (__le32*)partial->bh->b_data+addr_per_block, in ext4_ind_truncate()
1183 BUFFER_TRACE(partial->bh, "call brelse"); in ext4_ind_truncate()
1184 brelse(partial->bh); in ext4_ind_truncate()
1286 BUFFER_TRACE(partial->bh, "get_write_access"); in ext4_ind_remove_space()
1287 ext4_free_branches(handle, inode, partial->bh, in ext4_ind_remove_space()
1298 ext4_free_branches(handle, inode, partial->bh, in ext4_ind_remove_space()
1300 (__le32 *)partial->bh->b_data+addr_per_block, in ext4_ind_remove_space()
1332 ext4_free_branches(handle, inode, partial2->bh, in ext4_ind_remove_space()
1333 (__le32 *)partial2->bh->b_data, in ext4_ind_remove_space()
1367 BUFFER_TRACE(partial->bh, "get_write_access"); in ext4_ind_remove_space()
1368 ext4_free_branches(handle, inode, partial->bh, in ext4_ind_remove_space()
1391 partial->bh->b_blocknr == partial2->bh->b_blocknr) { in ext4_ind_remove_space()
1396 ext4_free_branches(handle, inode, partial->bh, in ext4_ind_remove_space()
1411 ext4_free_branches(handle, inode, partial->bh, in ext4_ind_remove_space()
1413 (__le32 *)partial->bh->b_data+addr_per_block, in ext4_ind_remove_space()
1418 ext4_free_branches(handle, inode, partial2->bh, in ext4_ind_remove_space()
1419 (__le32 *)partial2->bh->b_data, in ext4_ind_remove_space()
1428 BUFFER_TRACE(p->bh, "call brelse"); in ext4_ind_remove_space()
1429 brelse(p->bh); in ext4_ind_remove_space()
1433 BUFFER_TRACE(p2->bh, "call brelse"); in ext4_ind_remove_space()
1434 brelse(p2->bh); in ext4_ind_remove_space()