Home | History | Annotate | Download | only in v7fs

Lines Matching refs:blk

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