Lines Matching refs:params

90 ffs_read_disk_block(ib_params *params, uint64_t blkno, int size, char blk[])
94 assert(params != NULL);
95 assert(params->filesystem != NULL);
96 assert(params->fsfd != -1);
100 rv = pread(params->fsfd, blk, size, blkno * params->sectorsize);
103 (unsigned long long)blkno, params->filesystem);
107 (unsigned long long)blkno, params->filesystem);
120 ffs_find_disk_blocks_ufs1(ib_params *params, ino_t ino,
138 assert(params != NULL);
139 assert(params->fstype != NULL);
144 if (!ffs_read_disk_block(params, params->fstype->sblockloc, SBLOCKSIZE,
149 if (params->fstype->needswap)
155 fs->fs_inopb, params->filesystem);
160 if (! ffs_read_disk_block(params,
161 fsbtodb(fs, ino_to_fsba(fs, ino)) + params->fstype->offset,
167 if (params->fstype->needswap)
200 if (params->fstype->needswap)
217 else if (! ffs_read_disk_block(params,
218 fsbtodb(fs, blk) + params->fstype->offset,
233 rv = (*callback)(params, state,
234 fsbtodb(fs, blk) + params->fstype->offset,
244 (unsigned long long)ino, params->filesystem);
257 ffs_find_disk_blocks_ufs2(ib_params *params, ino_t ino,
275 assert(params != NULL);
276 assert(params->fstype != NULL);
281 if (!ffs_read_disk_block(params, params->fstype->sblockloc, SBLOCKSIZE,
286 if (params->fstype->needswap)
292 fs->fs_inopb, params->filesystem);
297 if (! ffs_read_disk_block(params,
298 fsbtodb(fs, ino_to_fsba(fs, ino)) + params->fstype->offset,
304 if (params->fstype->needswap)
337 if (params->fstype->needswap)
354 else if (! ffs_read_disk_block(params,
355 fsbtodb(fs, blk) + params->fstype->offset,
369 rv = (*callback)(params, state,
370 fsbtodb(fs, blk) + params->fstype->offset,
380 (unsigned long long)ino, params->filesystem);
393 ffs_findstage2_ino(ib_params *params, void *_ino,
400 assert(params != NULL);
401 assert(params->fstype != NULL);
402 assert(params->stage2 != NULL);
410 if (! ffs_read_disk_block(params, blk, blksize, dirbuf))
418 if (params->fstype->needswap) {
422 if (ino != 0 && strcmp(de->d_name, params->stage2) == 0) {
442 ffs_findstage2_blocks(ib_params *params, void *_state,
447 assert(params != NULL);
448 assert(params->stage2 != NULL);
453 params->stage2, state->maxblk);
469 ffs_match(ib_params *params)
471 return ffs_match_common(params, (off_t) 0);
475 raid_match(ib_params *params)
478 if (params->sectorsize != 512) {
481 params->sectorsize);
484 return ffs_match_common(params, (off_t) RF_PROTECTED_SECTORS);
488 ffs_match_common(ib_params *params, off_t offset)
495 assert(params != NULL);
496 assert(params->fstype != NULL);
500 loc = sblock_try[i] / params->sectorsize + offset;
501 if (!ffs_read_disk_block(params, loc, SBLOCKSIZE, sbbuf))
508 params->fstype->needswap = 0;
509 params->fstype->blocksize = fs->fs_bsize;
510 params->fstype->sblockloc = loc;
511 params->fstype->offset = offset;
518 params->fstype->needswap = 1;
519 params->fstype->blocksize = bswap32(fs->fs_bsize);
520 params->fstype->sblockloc = loc;
521 params->fstype->offset = offset;
536 ffs_findstage2(ib_params *params, uint32_t *maxblk, ib_block *blocks)
542 assert(params != NULL);
543 assert(params->stage2 != NULL);
547 if (params->flags & IB_STAGE2START)
548 return (hardcode_stage2(params, maxblk, blocks));
551 if (params->stage2[0] == '/')
552 params->stage2++;
553 if (strchr(params->stage2, '/') != NULL) {
555 params->stage2);
557 params->filesystem);
563 rv = ffs_find_disk_blocks_ufs2(params, ROOTINO,
566 rv = ffs_find_disk_blocks_ufs1(params, ROOTINO,
570 params->stage2, params->filesystem);
572 params->filesystem);
581 rv = ffs_find_disk_blocks_ufs2(params, ino,
584 rv = ffs_find_disk_blocks_ufs1(params, ino,