Lines Matching refs:bi

97 	struct gfs2_bitmap *bi = rbm_bi(rbm);  in gfs2_setbit()  local
98 unsigned int buflen = bi->bi_bytes; in gfs2_setbit()
101 byte1 = bi->bi_bh->b_data + bi->bi_offset + (rbm->offset / GFS2_NBBY); in gfs2_setbit()
102 end = bi->bi_bh->b_data + bi->bi_offset + buflen; in gfs2_setbit()
114 (unsigned long long)rbm->rgd->rd_addr, bi->bi_start, in gfs2_setbit()
115 (unsigned long long)bi->bi_bh->b_blocknr); in gfs2_setbit()
117 bi->bi_offset, bi->bi_bytes, in gfs2_setbit()
125 if (do_clone && bi->bi_clone) { in gfs2_setbit()
126 byte2 = bi->bi_clone + bi->bi_offset + (rbm->offset / GFS2_NBBY); in gfs2_setbit()
145 struct gfs2_bitmap *bi = rbm_bi(rbm); in gfs2_testbit() local
150 if (use_clone && bi->bi_clone) in gfs2_testbit()
151 buffer = bi->bi_clone; in gfs2_testbit()
153 buffer = bi->bi_bh->b_data; in gfs2_testbit()
154 buffer += bi->bi_offset; in gfs2_testbit()
309 struct gfs2_bitmap *bi = rgd->rd_bits + rbm->bii; in gfs2_rbm_add() local
311 if (rbm->offset + blocks < bi->bi_blocks) { in gfs2_rbm_add()
315 blocks -= bi->bi_blocks - rbm->offset; in gfs2_rbm_add()
318 bi++; in gfs2_rbm_add()
319 if (bi == rgd->rd_bits + rgd->rd_length) in gfs2_rbm_add()
321 if (blocks < bi->bi_blocks) { in gfs2_rbm_add()
323 rbm->bii = bi - rgd->rd_bits; in gfs2_rbm_add()
326 blocks -= bi->bi_blocks; in gfs2_rbm_add()
383 struct gfs2_bitmap *bi; in gfs2_free_extlen() local
392 bi = rbm_bi(&rbm); in gfs2_free_extlen()
393 start = bi->bi_bh->b_data; in gfs2_free_extlen()
394 if (bi->bi_clone) in gfs2_free_extlen()
395 start = bi->bi_clone; in gfs2_free_extlen()
396 start += bi->bi_offset; in gfs2_free_extlen()
397 end = start + bi->bi_bytes; in gfs2_free_extlen()
468 struct gfs2_bitmap *bi = NULL; in gfs2_rgrp_verify() local
477 bi = rgd->rd_bits + buf; in gfs2_rgrp_verify()
480 bi->bi_bh->b_data + in gfs2_rgrp_verify()
481 bi->bi_offset, in gfs2_rgrp_verify()
482 bi->bi_bytes, x); in gfs2_rgrp_verify()
613 struct gfs2_bitmap *bi = rgd->rd_bits + x; in gfs2_free_clones() local
614 kfree(bi->bi_clone); in gfs2_free_clones()
615 bi->bi_clone = NULL; in gfs2_free_clones()
758 struct gfs2_bitmap *bi; in compute_bitstructs() local
773 bi = rgd->rd_bits + x; in compute_bitstructs()
775 bi->bi_flags = 0; in compute_bitstructs()
779 bi->bi_offset = sizeof(struct gfs2_rgrp); in compute_bitstructs()
780 bi->bi_start = 0; in compute_bitstructs()
781 bi->bi_bytes = bytes; in compute_bitstructs()
782 bi->bi_blocks = bytes * GFS2_NBBY; in compute_bitstructs()
786 bi->bi_offset = sizeof(struct gfs2_rgrp); in compute_bitstructs()
787 bi->bi_start = 0; in compute_bitstructs()
788 bi->bi_bytes = bytes; in compute_bitstructs()
789 bi->bi_blocks = bytes * GFS2_NBBY; in compute_bitstructs()
793 bi->bi_offset = sizeof(struct gfs2_meta_header); in compute_bitstructs()
794 bi->bi_start = rgd->rd_bitbytes - bytes_left; in compute_bitstructs()
795 bi->bi_bytes = bytes; in compute_bitstructs()
796 bi->bi_blocks = bytes * GFS2_NBBY; in compute_bitstructs()
801 bi->bi_offset = sizeof(struct gfs2_meta_header); in compute_bitstructs()
802 bi->bi_start = rgd->rd_bitbytes - bytes_left; in compute_bitstructs()
803 bi->bi_bytes = bytes; in compute_bitstructs()
804 bi->bi_blocks = bytes * GFS2_NBBY; in compute_bitstructs()
814 bi = rgd->rd_bits + (length - 1); in compute_bitstructs()
815 if ((bi->bi_start + bi->bi_bytes) * GFS2_NBBY != rgd->rd_data) { in compute_bitstructs()
828 bi->bi_start, bi->bi_bytes, bi->bi_offset); in compute_bitstructs()
1149 struct gfs2_bitmap *bi; in count_unlinked() local
1154 for (i = 0, bi = rgd->rd_bits; i < length; i++, bi++) { in count_unlinked()
1156 buffer = bi->bi_bh->b_data + bi->bi_offset; in count_unlinked()
1157 WARN_ON(!buffer_uptodate(bi->bi_bh)); in count_unlinked()
1158 while (goal < bi->bi_blocks) { in count_unlinked()
1159 goal = gfs2_bitfit(buffer, bi->bi_bytes, goal, in count_unlinked()
1173 struct gfs2_bitmap *bi; in rgrp_set_bitmap_flags() local
1178 bi = rgd->rd_bits + x; in rgrp_set_bitmap_flags()
1179 clear_bit(GBF_FULL, &bi->bi_flags); in rgrp_set_bitmap_flags()
1183 bi = rgd->rd_bits + x; in rgrp_set_bitmap_flags()
1184 set_bit(GBF_FULL, &bi->bi_flags); in rgrp_set_bitmap_flags()
1204 struct gfs2_bitmap *bi; in gfs2_rgrp_go_instantiate() local
1212 bi = rgd->rd_bits + x; in gfs2_rgrp_go_instantiate()
1213 error = gfs2_meta_read(gl, rgd->rd_addr + x, 0, 0, &bi->bi_bh); in gfs2_rgrp_go_instantiate()
1219 bi = rgd->rd_bits + y; in gfs2_rgrp_go_instantiate()
1220 error = gfs2_meta_wait(sdp, bi->bi_bh); in gfs2_rgrp_go_instantiate()
1223 if (gfs2_metatype_check(sdp, bi->bi_bh, y ? GFS2_METATYPE_RB : in gfs2_rgrp_go_instantiate()
1254 bi = rgd->rd_bits + x; in gfs2_rgrp_go_instantiate()
1255 brelse(bi->bi_bh); in gfs2_rgrp_go_instantiate()
1256 bi->bi_bh = NULL; in gfs2_rgrp_go_instantiate()
1257 gfs2_assert_warn(sdp, !bi->bi_clone); in gfs2_rgrp_go_instantiate()
1300 struct gfs2_bitmap *bi = rgd->rd_bits + x; in gfs2_rgrp_brelse() local
1301 if (bi->bi_bh) { in gfs2_rgrp_brelse()
1302 brelse(bi->bi_bh); in gfs2_rgrp_brelse()
1303 bi->bi_bh = NULL; in gfs2_rgrp_brelse()
1311 const struct gfs2_bitmap *bi, unsigned minlen, u64 *ptrimmed) in gfs2_rgrp_send_discards() argument
1322 for (x = 0; x < bi->bi_bytes; x++) { in gfs2_rgrp_send_discards()
1323 const u8 *clone = bi->bi_clone ? bi->bi_clone : bi->bi_bh->b_data; in gfs2_rgrp_send_discards()
1324 clone += bi->bi_offset; in gfs2_rgrp_send_discards()
1327 const u8 *orig = bh->b_data + bi->bi_offset + x; in gfs2_rgrp_send_discards()
1335 blk = offset + ((bi->bi_start + x) * GFS2_NBBY); in gfs2_rgrp_send_discards()
1442 struct gfs2_bitmap *bi = rgd->rd_bits + x; in gfs2_fitrim() local
1445 rgd->rd_data0, NULL, bi, minlen, in gfs2_fitrim()
1748 struct gfs2_bitmap *bi; in gfs2_rbm_find() local
1759 bi = rbm_bi(rbm); in gfs2_rbm_find()
1760 if (test_bit(GBF_FULL, &bi->bi_flags) && in gfs2_rbm_find()
1764 bh = bi->bi_bh; in gfs2_rbm_find()
1765 buffer = bh->b_data + bi->bi_offset; in gfs2_rbm_find()
1767 if (state != GFS2_BLKST_UNLINKED && bi->bi_clone) in gfs2_rbm_find()
1768 buffer = bi->bi_clone + bi->bi_offset; in gfs2_rbm_find()
1769 offset = gfs2_bitfit(buffer, bi->bi_bytes, rbm->offset, state); in gfs2_rbm_find()
1772 set_bit(GBF_FULL, &bi->bi_flags); in gfs2_rbm_find()
2266 struct gfs2_bitmap *bi, *bi_prev = NULL; in rgblk_free() local
2272 bi = rbm_bi(&rbm); in rgblk_free()
2273 if (bi != bi_prev) { in rgblk_free()
2274 if (!bi->bi_clone) { in rgblk_free()
2275 bi->bi_clone = kmalloc(bi->bi_bh->b_size, in rgblk_free()
2277 memcpy(bi->bi_clone + bi->bi_offset, in rgblk_free()
2278 bi->bi_bh->b_data + bi->bi_offset, in rgblk_free()
2279 bi->bi_bytes); in rgblk_free()
2281 gfs2_trans_add_meta(rbm.rgd->rd_gl, bi->bi_bh); in rgblk_free()
2282 bi_prev = bi; in rgblk_free()