Lines Matching refs:bh
76 struct buffer_head *bh; in nilfs_gccache_submit_read_data() local
79 bh = nilfs_grab_buffer(inode, inode->i_mapping, blkoff, 0); in nilfs_gccache_submit_read_data()
80 if (unlikely(!bh)) in nilfs_gccache_submit_read_data()
83 if (buffer_uptodate(bh)) in nilfs_gccache_submit_read_data()
91 brelse(bh); in nilfs_gccache_submit_read_data()
96 lock_buffer(bh); in nilfs_gccache_submit_read_data()
97 if (buffer_uptodate(bh)) { in nilfs_gccache_submit_read_data()
98 unlock_buffer(bh); in nilfs_gccache_submit_read_data()
102 if (!buffer_mapped(bh)) { in nilfs_gccache_submit_read_data()
103 bh->b_bdev = inode->i_sb->s_bdev; in nilfs_gccache_submit_read_data()
104 set_buffer_mapped(bh); in nilfs_gccache_submit_read_data()
106 bh->b_blocknr = pbn; in nilfs_gccache_submit_read_data()
107 bh->b_end_io = end_buffer_read_sync; in nilfs_gccache_submit_read_data()
108 get_bh(bh); in nilfs_gccache_submit_read_data()
109 submit_bh(READ, bh); in nilfs_gccache_submit_read_data()
111 bh->b_blocknr = vbn; in nilfs_gccache_submit_read_data()
114 *out_bh = bh; in nilfs_gccache_submit_read_data()
117 unlock_page(bh->b_page); in nilfs_gccache_submit_read_data()
118 page_cache_release(bh->b_page); in nilfs_gccache_submit_read_data()
152 int nilfs_gccache_wait_and_mark_dirty(struct buffer_head *bh) in nilfs_gccache_wait_and_mark_dirty() argument
154 wait_on_buffer(bh); in nilfs_gccache_wait_and_mark_dirty()
155 if (!buffer_uptodate(bh)) in nilfs_gccache_wait_and_mark_dirty()
157 if (buffer_dirty(bh)) in nilfs_gccache_wait_and_mark_dirty()
160 if (buffer_nilfs_node(bh) && nilfs_btree_broken_node_block(bh)) { in nilfs_gccache_wait_and_mark_dirty()
161 clear_buffer_uptodate(bh); in nilfs_gccache_wait_and_mark_dirty()
164 mark_buffer_dirty(bh); in nilfs_gccache_wait_and_mark_dirty()