Lines Matching refs:blk

83 datablock_number_sanity(const struct v7fs_self *fs, v7fs_daddr_t blk)  in datablock_number_sanity()  argument
86 bool ok = (blk >= sb->datablock_start_sector) && in datablock_number_sanity()
87 (blk < sb->volume_size); in datablock_number_sanity()
91 DPRINTF("Bad data block #%d\n", blk); in datablock_number_sanity()
102 v7fs_daddr_t blk; in v7fs_datablock_allocate() local
115 blk = sb->freeblock[--sb->nfreeblock]; in v7fs_datablock_allocate()
121 if ((error = v7fs_freeblock_update(fs, blk))) { in v7fs_datablock_allocate()
129 } while (!datablock_number_sanity(fs, blk)); /* skip bogus block. */ in v7fs_datablock_allocate()
132 DPRINTF("Get freeblock %d\n", blk); in v7fs_datablock_allocate()
135 if (!(buf = scratch_read(fs, blk))) in v7fs_datablock_allocate()
138 if (!fs->io.write(fs->io.cookie, buf, blk)) in v7fs_datablock_allocate()
143 *block_number = blk; in v7fs_datablock_allocate()
149 v7fs_datablock_deallocate(struct v7fs_self *fs, v7fs_daddr_t blk) in v7fs_datablock_deallocate() argument
155 if (!datablock_number_sanity(fs, blk)) in v7fs_datablock_deallocate()
161 sb->freeblock[sb->nfreeblock++] = blk; in v7fs_datablock_deallocate()
171 if (!(buf = scratch_read(fs, blk))) { in v7fs_datablock_deallocate()
182 if (!fs->io.write(fs->io.cookie, (uint8_t *)fb, blk)) { in v7fs_datablock_deallocate()
187 sb->freeblock[0] = blk; in v7fs_datablock_deallocate()
257 v7fs_daddr_t blk, blk2; in v7fs_datablock_foreach() local
270 blk = p->addr[i]; in v7fs_datablock_foreach()
271 if (!datablock_number_sanity(fs, blk)) { in v7fs_datablock_foreach()
278 if ((ret = func(fs, ctx, blk, last ? filesize : V7FS_BSIZE))) in v7fs_datablock_foreach()
285 blk = p->addr[V7FS_NADDR_INDEX1]; in v7fs_datablock_foreach()
286 if (!datablock_number_sanity(fs, blk)) in v7fs_datablock_foreach()
289 if ((ret = v7fs_loop1(fs, blk, &filesize, func, ctx))) in v7fs_datablock_foreach()
293 blk = p->addr[V7FS_NADDR_INDEX2]; in v7fs_datablock_foreach()
294 if (!datablock_number_sanity(fs, blk)) in v7fs_datablock_foreach()
297 if ((ret = v7fs_loop2(fs, blk, &filesize, func, ctx))) in v7fs_datablock_foreach()
301 blk = p->addr[V7FS_NADDR_INDEX3]; in v7fs_datablock_foreach()
302 if (!datablock_number_sanity(fs, blk)) in v7fs_datablock_foreach()
306 blk2 = v7fs_link(fs, blk, i); in v7fs_datablock_foreach()
307 if (!datablock_number_sanity(fs, blk)) in v7fs_datablock_foreach()
321 v7fs_daddr_t blk; in v7fs_loop2() local
326 blk = v7fs_link(fs, listblk, j); in v7fs_loop2()
327 if (!datablock_number_sanity(fs, blk)) in v7fs_loop2()
329 if ((ret = v7fs_loop1(fs, blk, filesize, func, ctx))) in v7fs_loop2()
340 v7fs_daddr_t blk; in v7fs_loop1() local
346 blk = v7fs_link(fs, listblk, k); in v7fs_loop1()
347 if (!datablock_number_sanity(fs, blk)) in v7fs_loop1()
350 if ((ret = func(fs, ctx, blk, last ? *filesize : V7FS_BSIZE))) in v7fs_loop1()
364 v7fs_daddr_t blk = 0; in v7fs_datablock_last() local
374 blk = inode->addr[map.index[0]]; in v7fs_datablock_last()
377 blk = v7fs_link(fs, addr[V7FS_NADDR_INDEX1], map.index[0]); in v7fs_datablock_last()
380 blk = v7fs_link(fs, v7fs_link(fs, in v7fs_datablock_last()
384 blk = v7fs_link(fs, v7fs_link(fs, v7fs_link(fs, in v7fs_datablock_last()
390 return blk; in v7fs_datablock_last()
399 v7fs_daddr_t blk, idxblk; in v7fs_datablock_expand() local
431 blk = v7fs_add_leaf(fs, idxblk, 0); in v7fs_datablock_expand()
436 blk = v7fs_add_leaf(fs, v7fs_add_leaf(fs, in v7fs_datablock_expand()
442 blk = v7fs_add_leaf(fs, v7fs_add_leaf(fs, in v7fs_datablock_expand()
449 if ((error = v7fs_datablock_allocate(fs, &blk))) in v7fs_datablock_expand()
451 inode->addr[newmap.index[0]] = blk; in v7fs_datablock_expand()
453 newmap.index[0], blk); in v7fs_datablock_expand()
457 blk = v7fs_add_leaf(fs, idxblk, in v7fs_datablock_expand()
466 blk = v7fs_add_leaf(fs, v7fs_link(fs,idxblk, in v7fs_datablock_expand()
481 blk = v7fs_add_leaf(fs, v7fs_link(fs, in v7fs_datablock_expand()
487 if (!blk) { in v7fs_datablock_expand()
503 v7fs_daddr_t blk; in v7fs_link() local
511 blk = V7FS_VAL32(fs, list[n]); in v7fs_link()
514 if (!datablock_number_sanity(fs, blk)) in v7fs_link()
517 return blk; in v7fs_link()
553 v7fs_daddr_t blk, idxblk; in v7fs_datablock_contract() local
603 blk = inode->addr[oldmap.index[0]]; in v7fs_datablock_contract()
604 error = v7fs_datablock_deallocate(fs, blk); in v7fs_datablock_contract()
655 v7fs_daddr_t blk; in v7fs_unlink() local
661 blk = V7FS_VAL32(fs, daddr_list[n]); in v7fs_unlink()
666 return blk; /* unlinked block. */ in v7fs_unlink()