Lines Matching refs:bi

89 	struct gfs2_bitmap *bi = rbm_bi(rbm);  in gfs2_setbit()  local
90 unsigned int buflen = bi->bi_bytes; in gfs2_setbit()
93 byte1 = bi->bi_bh->b_data + bi->bi_offset + (rbm->offset / GFS2_NBBY); in gfs2_setbit()
94 end = bi->bi_bh->b_data + bi->bi_offset + buflen; in gfs2_setbit()
106 (unsigned long long)rbm->rgd->rd_addr, bi->bi_start, in gfs2_setbit()
107 (unsigned long long)bi->bi_bh->b_blocknr); in gfs2_setbit()
109 bi->bi_offset, bi->bi_bytes, in gfs2_setbit()
117 if (do_clone && bi->bi_clone) { in gfs2_setbit()
118 byte2 = bi->bi_clone + bi->bi_offset + (rbm->offset / GFS2_NBBY); in gfs2_setbit()
137 struct gfs2_bitmap *bi = rbm_bi(rbm); in gfs2_testbit() local
142 if (use_clone && bi->bi_clone) in gfs2_testbit()
143 buffer = bi->bi_clone; in gfs2_testbit()
145 buffer = bi->bi_bh->b_data; in gfs2_testbit()
146 buffer += bi->bi_offset; in gfs2_testbit()
367 struct gfs2_bitmap *bi; in gfs2_free_extlen() local
376 bi = rbm_bi(&rbm); in gfs2_free_extlen()
377 start = bi->bi_bh->b_data; in gfs2_free_extlen()
378 if (bi->bi_clone) in gfs2_free_extlen()
379 start = bi->bi_clone; in gfs2_free_extlen()
380 start += bi->bi_offset; in gfs2_free_extlen()
381 end = start + bi->bi_bytes; in gfs2_free_extlen()
452 struct gfs2_bitmap *bi = NULL; in gfs2_rgrp_verify() local
461 bi = rgd->rd_bits + buf; in gfs2_rgrp_verify()
464 bi->bi_bh->b_data + in gfs2_rgrp_verify()
465 bi->bi_offset, in gfs2_rgrp_verify()
466 bi->bi_bytes, x); in gfs2_rgrp_verify()
597 struct gfs2_bitmap *bi = rgd->rd_bits + x; in gfs2_free_clones() local
598 kfree(bi->bi_clone); in gfs2_free_clones()
599 bi->bi_clone = NULL; in gfs2_free_clones()
769 struct gfs2_bitmap *bi; in compute_bitstructs() local
784 bi = rgd->rd_bits + x; in compute_bitstructs()
786 bi->bi_flags = 0; in compute_bitstructs()
790 bi->bi_offset = sizeof(struct gfs2_rgrp); in compute_bitstructs()
791 bi->bi_start = 0; in compute_bitstructs()
792 bi->bi_bytes = bytes; in compute_bitstructs()
793 bi->bi_blocks = bytes * GFS2_NBBY; in compute_bitstructs()
797 bi->bi_offset = sizeof(struct gfs2_rgrp); in compute_bitstructs()
798 bi->bi_start = 0; in compute_bitstructs()
799 bi->bi_bytes = bytes; in compute_bitstructs()
800 bi->bi_blocks = bytes * GFS2_NBBY; in compute_bitstructs()
804 bi->bi_offset = sizeof(struct gfs2_meta_header); in compute_bitstructs()
805 bi->bi_start = rgd->rd_bitbytes - bytes_left; in compute_bitstructs()
806 bi->bi_bytes = bytes; in compute_bitstructs()
807 bi->bi_blocks = bytes * GFS2_NBBY; in compute_bitstructs()
812 bi->bi_offset = sizeof(struct gfs2_meta_header); in compute_bitstructs()
813 bi->bi_start = rgd->rd_bitbytes - bytes_left; in compute_bitstructs()
814 bi->bi_bytes = bytes; in compute_bitstructs()
815 bi->bi_blocks = bytes * GFS2_NBBY; in compute_bitstructs()
825 bi = rgd->rd_bits + (length - 1); in compute_bitstructs()
826 if ((bi->bi_start + bi->bi_bytes) * GFS2_NBBY != rgd->rd_data) { in compute_bitstructs()
830 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()
1187 struct gfs2_bitmap *bi; in gfs2_rgrp_bh_get() local
1195 bi = rgd->rd_bits + x; in gfs2_rgrp_bh_get()
1196 error = gfs2_meta_read(gl, rgd->rd_addr + x, 0, 0, &bi->bi_bh); in gfs2_rgrp_bh_get()
1202 bi = rgd->rd_bits + y; in gfs2_rgrp_bh_get()
1203 error = gfs2_meta_wait(sdp, bi->bi_bh); in gfs2_rgrp_bh_get()
1206 if (gfs2_metatype_check(sdp, bi->bi_bh, y ? GFS2_METATYPE_RB : in gfs2_rgrp_bh_get()
1240 bi = rgd->rd_bits + x; in gfs2_rgrp_bh_get()
1241 brelse(bi->bi_bh); in gfs2_rgrp_bh_get()
1242 bi->bi_bh = NULL; in gfs2_rgrp_bh_get()
1243 gfs2_assert_warn(sdp, !bi->bi_clone); in gfs2_rgrp_bh_get()
1293 struct gfs2_bitmap *bi = rgd->rd_bits + x; in gfs2_rgrp_brelse() local
1294 if (bi->bi_bh) { in gfs2_rgrp_brelse()
1295 brelse(bi->bi_bh); in gfs2_rgrp_brelse()
1296 bi->bi_bh = NULL; in gfs2_rgrp_brelse()
1320 const struct gfs2_bitmap *bi, unsigned minlen, u64 *ptrimmed) in gfs2_rgrp_send_discards() argument
1331 for (x = 0; x < bi->bi_bytes; x++) { in gfs2_rgrp_send_discards()
1332 const u8 *clone = bi->bi_clone ? bi->bi_clone : bi->bi_bh->b_data; in gfs2_rgrp_send_discards()
1333 clone += bi->bi_offset; in gfs2_rgrp_send_discards()
1336 const u8 *orig = bh->b_data + bi->bi_offset + x; in gfs2_rgrp_send_discards()
1344 blk = offset + ((bi->bi_start + x) * GFS2_NBBY); in gfs2_rgrp_send_discards()
1447 struct gfs2_bitmap *bi = rgd->rd_bits + x; in gfs2_fitrim() local
1449 rgd->rd_data0, NULL, bi, minlen, in gfs2_fitrim()
1738 struct gfs2_bitmap *bi; in gfs2_rbm_find() local
1749 bi = rbm_bi(rbm); in gfs2_rbm_find()
1751 test_bit(GBF_FULL, &bi->bi_flags) && in gfs2_rbm_find()
1755 bh = bi->bi_bh; in gfs2_rbm_find()
1756 buffer = bh->b_data + bi->bi_offset; in gfs2_rbm_find()
1758 if (state != GFS2_BLKST_UNLINKED && bi->bi_clone) in gfs2_rbm_find()
1759 buffer = bi->bi_clone + bi->bi_offset; in gfs2_rbm_find()
1760 offset = gfs2_bitfit(buffer, bi->bi_bytes, rbm->offset, state); in gfs2_rbm_find()
1763 set_bit(GBF_FULL, &bi->bi_flags); in gfs2_rbm_find()
2224 struct gfs2_bitmap *bi, *bi_prev = NULL; in rgblk_free() local
2230 bi = rbm_bi(&rbm); in rgblk_free()
2231 if (bi != bi_prev) { in rgblk_free()
2232 if (!bi->bi_clone) { in rgblk_free()
2233 bi->bi_clone = kmalloc(bi->bi_bh->b_size, in rgblk_free()
2235 memcpy(bi->bi_clone + bi->bi_offset, in rgblk_free()
2236 bi->bi_bh->b_data + bi->bi_offset, in rgblk_free()
2237 bi->bi_bytes); in rgblk_free()
2239 gfs2_trans_add_meta(rbm.rgd->rd_gl, bi->bi_bh); in rgblk_free()
2240 bi_prev = bi; in rgblk_free()