Lines Matching refs:bh

179 				   struct buffer_head *bh,  in ext4_init_block_bitmap()  argument
189 J_ASSERT_BH(bh, buffer_locked(bh)); in ext4_init_block_bitmap()
208 memset(bh->b_data, 0, sb->s_blocksize); in ext4_init_block_bitmap()
212 ext4_set_bit(bit, bh->b_data); in ext4_init_block_bitmap()
222 ext4_set_bit(EXT4_B2C(sbi, tmp - start), bh->b_data); in ext4_init_block_bitmap()
226 ext4_set_bit(EXT4_B2C(sbi, tmp - start), bh->b_data); in ext4_init_block_bitmap()
232 ext4_set_bit(EXT4_B2C(sbi, tmp - start), bh->b_data); in ext4_init_block_bitmap()
241 sb->s_blocksize * 8, bh->b_data); in ext4_init_block_bitmap()
242 ext4_block_bitmap_csum_set(sb, block_group, gdp, bh); in ext4_init_block_bitmap()
278 struct buffer_head **bh) in ext4_get_group_desc() argument
305 if (bh) in ext4_get_group_desc()
306 *bh = sbi->s_group_desc[group_desc]; in ext4_get_group_desc()
317 struct buffer_head *bh) in ext4_valid_block_bitmap() argument
339 if (!ext4_test_bit(EXT4_B2C(sbi, offset), bh->b_data)) in ext4_valid_block_bitmap()
346 if (!ext4_test_bit(EXT4_B2C(sbi, offset), bh->b_data)) in ext4_valid_block_bitmap()
353 next_zero_bit = ext4_find_next_zero_bit(bh->b_data, in ext4_valid_block_bitmap()
366 struct buffer_head *bh) in ext4_validate_block_bitmap() argument
372 if (buffer_verified(bh)) in ext4_validate_block_bitmap()
379 desc, bh))) { in ext4_validate_block_bitmap()
388 blk = ext4_valid_block_bitmap(sb, desc, block_group, bh); in ext4_validate_block_bitmap()
399 set_buffer_verified(bh); in ext4_validate_block_bitmap()
418 struct buffer_head *bh; in ext4_read_block_bitmap_nowait() local
426 bh = sb_getblk(sb, bitmap_blk); in ext4_read_block_bitmap_nowait()
427 if (unlikely(!bh)) { in ext4_read_block_bitmap_nowait()
434 if (bitmap_uptodate(bh)) in ext4_read_block_bitmap_nowait()
437 lock_buffer(bh); in ext4_read_block_bitmap_nowait()
438 if (bitmap_uptodate(bh)) { in ext4_read_block_bitmap_nowait()
439 unlock_buffer(bh); in ext4_read_block_bitmap_nowait()
444 err = ext4_init_block_bitmap(sb, bh, block_group, desc); in ext4_read_block_bitmap_nowait()
445 set_bitmap_uptodate(bh); in ext4_read_block_bitmap_nowait()
446 set_buffer_uptodate(bh); in ext4_read_block_bitmap_nowait()
448 unlock_buffer(bh); in ext4_read_block_bitmap_nowait()
457 if (buffer_uptodate(bh)) { in ext4_read_block_bitmap_nowait()
462 set_bitmap_uptodate(bh); in ext4_read_block_bitmap_nowait()
463 unlock_buffer(bh); in ext4_read_block_bitmap_nowait()
469 set_buffer_new(bh); in ext4_read_block_bitmap_nowait()
471 bh->b_end_io = ext4_end_bitmap_read; in ext4_read_block_bitmap_nowait()
472 get_bh(bh); in ext4_read_block_bitmap_nowait()
473 submit_bh(READ | REQ_META | REQ_PRIO, bh); in ext4_read_block_bitmap_nowait()
474 return bh; in ext4_read_block_bitmap_nowait()
476 err = ext4_validate_block_bitmap(sb, desc, block_group, bh); in ext4_read_block_bitmap_nowait()
479 return bh; in ext4_read_block_bitmap_nowait()
481 put_bh(bh); in ext4_read_block_bitmap_nowait()
487 struct buffer_head *bh) in ext4_wait_block_bitmap() argument
491 if (!buffer_new(bh)) in ext4_wait_block_bitmap()
496 wait_on_buffer(bh); in ext4_wait_block_bitmap()
497 if (!buffer_uptodate(bh)) { in ext4_wait_block_bitmap()
500 block_group, (unsigned long long) bh->b_blocknr); in ext4_wait_block_bitmap()
503 clear_buffer_new(bh); in ext4_wait_block_bitmap()
505 return ext4_validate_block_bitmap(sb, desc, block_group, bh); in ext4_wait_block_bitmap()
511 struct buffer_head *bh; in ext4_read_block_bitmap() local
514 bh = ext4_read_block_bitmap_nowait(sb, block_group); in ext4_read_block_bitmap()
515 if (IS_ERR(bh)) in ext4_read_block_bitmap()
516 return bh; in ext4_read_block_bitmap()
517 err = ext4_wait_block_bitmap(sb, block_group, bh); in ext4_read_block_bitmap()
519 put_bh(bh); in ext4_read_block_bitmap()
522 return bh; in ext4_read_block_bitmap()