Lines Matching refs:bh
183 struct buffer_head *bh, in ext4_init_block_bitmap() argument
191 ASSERT(buffer_locked(bh)); in ext4_init_block_bitmap()
199 memset(bh->b_data, 0, sb->s_blocksize); in ext4_init_block_bitmap()
202 if ((bit_max >> 3) >= bh->b_size) in ext4_init_block_bitmap()
206 ext4_set_bit(bit, bh->b_data); in ext4_init_block_bitmap()
213 ext4_set_bit(EXT4_B2C(sbi, tmp - start), bh->b_data); in ext4_init_block_bitmap()
217 ext4_set_bit(EXT4_B2C(sbi, tmp - start), bh->b_data); in ext4_init_block_bitmap()
223 ext4_set_bit(EXT4_B2C(sbi, tmp - start), bh->b_data); in ext4_init_block_bitmap()
232 sb->s_blocksize * 8, bh->b_data); in ext4_init_block_bitmap()
267 struct buffer_head **bh) in ext4_get_group_desc() argument
277 sb, block_group, bh); in ext4_get_group_desc()
305 if (bh) in ext4_get_group_desc()
306 *bh = bh_p; in ext4_get_group_desc()
312 struct buffer_head *bh) in ext4_valid_block_bitmap_padding() argument
321 next_zero_bit = ext4_find_next_zero_bit(bh->b_data, bitmap_size, offset); in ext4_valid_block_bitmap_padding()
351 struct buffer_head *bh) in ext4_valid_block_bitmap() argument
375 !ext4_test_bit(EXT4_B2C(sbi, offset), bh->b_data)) in ext4_valid_block_bitmap()
383 !ext4_test_bit(EXT4_B2C(sbi, offset), bh->b_data)) in ext4_valid_block_bitmap()
393 next_zero_bit = ext4_find_next_zero_bit(bh->b_data, in ext4_valid_block_bitmap()
406 struct buffer_head *bh) in ext4_validate_block_bitmap() argument
416 if (buffer_verified(bh)) in ext4_validate_block_bitmap()
422 if (buffer_verified(bh)) in ext4_validate_block_bitmap()
424 if (unlikely(!ext4_block_bitmap_csum_verify(sb, desc, bh) || in ext4_validate_block_bitmap()
432 blk = ext4_valid_block_bitmap(sb, desc, block_group, bh); in ext4_validate_block_bitmap()
441 blk = ext4_valid_block_bitmap_padding(sb, block_group, bh); in ext4_validate_block_bitmap()
450 set_buffer_verified(bh); in ext4_validate_block_bitmap()
473 struct buffer_head *bh; in ext4_read_block_bitmap_nowait() local
492 bh = sb_getblk(sb, bitmap_blk); in ext4_read_block_bitmap_nowait()
493 if (unlikely(!bh)) { in ext4_read_block_bitmap_nowait()
500 if (ignore_locked && buffer_locked(bh)) { in ext4_read_block_bitmap_nowait()
502 put_bh(bh); in ext4_read_block_bitmap_nowait()
506 if (bitmap_uptodate(bh)) in ext4_read_block_bitmap_nowait()
509 lock_buffer(bh); in ext4_read_block_bitmap_nowait()
510 if (bitmap_uptodate(bh)) { in ext4_read_block_bitmap_nowait()
511 unlock_buffer(bh); in ext4_read_block_bitmap_nowait()
519 unlock_buffer(bh); in ext4_read_block_bitmap_nowait()
525 err = ext4_init_block_bitmap(sb, bh, block_group, desc); in ext4_read_block_bitmap_nowait()
528 unlock_buffer(bh); in ext4_read_block_bitmap_nowait()
533 set_bitmap_uptodate(bh); in ext4_read_block_bitmap_nowait()
534 set_buffer_uptodate(bh); in ext4_read_block_bitmap_nowait()
535 set_buffer_verified(bh); in ext4_read_block_bitmap_nowait()
537 unlock_buffer(bh); in ext4_read_block_bitmap_nowait()
538 return bh; in ext4_read_block_bitmap_nowait()
541 if (buffer_uptodate(bh)) { in ext4_read_block_bitmap_nowait()
546 set_bitmap_uptodate(bh); in ext4_read_block_bitmap_nowait()
547 unlock_buffer(bh); in ext4_read_block_bitmap_nowait()
553 set_buffer_new(bh); in ext4_read_block_bitmap_nowait()
555 ext4_read_bh_nowait(bh, REQ_META | REQ_PRIO | in ext4_read_block_bitmap_nowait()
559 return bh; in ext4_read_block_bitmap_nowait()
561 err = ext4_validate_block_bitmap(sb, desc, block_group, bh); in ext4_read_block_bitmap_nowait()
564 return bh; in ext4_read_block_bitmap_nowait()
566 put_bh(bh); in ext4_read_block_bitmap_nowait()
572 struct buffer_head *bh) in ext4_wait_block_bitmap() argument
577 sb, block_group, bh); in ext4_wait_block_bitmap()
579 if (!buffer_new(bh)) in ext4_wait_block_bitmap()
584 wait_on_buffer(bh); in ext4_wait_block_bitmap()
585 if (!buffer_uptodate(bh)) { in ext4_wait_block_bitmap()
588 block_group, (unsigned long long) bh->b_blocknr); in ext4_wait_block_bitmap()
593 clear_buffer_new(bh); in ext4_wait_block_bitmap()
595 return ext4_validate_block_bitmap(sb, desc, block_group, bh); in ext4_wait_block_bitmap()
601 struct buffer_head *bh; in ext4_read_block_bitmap() local
604 bh = ext4_read_block_bitmap_nowait(sb, block_group, false); in ext4_read_block_bitmap()
605 if (IS_ERR(bh)) in ext4_read_block_bitmap()
606 return bh; in ext4_read_block_bitmap()
607 err = ext4_wait_block_bitmap(sb, block_group, bh); in ext4_read_block_bitmap()
609 put_bh(bh); in ext4_read_block_bitmap()
612 return bh; in ext4_read_block_bitmap()