Lines Matching refs:fs

66 #include <sys/fs/ufs_fsdir.h>
67 #include <sys/fs/ufs_fs.h>
68 #include <sys/fs/ufs_inode.h>
69 #include <sys/fs/ufs_acl.h>
70 #include <sys/fs/ufs_log.h>
73 #include <ufs/fs.h>
92 #define cg_blks(fs, cgp, cylno) (((cgp))->cg_b[cylno])
140 #define SB (sizeof (struct fs))
141 #define BLKSIZE (fs->fs_bsize) /* for clarity */
142 #define FRGSIZE (fs->fs_fsize)
143 #define BLKSHIFT (fs->fs_bshift)
144 #define FRGSHIFT (fs->fs_fshift)
150 #define itob(i) (((u_offset_t)itod(fs, (i)) << \
151 (u_offset_t)FRGSHIFT) + (u_offset_t)itoo(fs, (i)) * (u_offset_t)INODE)
209 struct fs *fs;
211 struct fs un_filesystem;
216 struct fs filesystem, *fs; /* super block */
327 static void printsb(struct fs *);
515 fs = &filesystem;
516 if ((fs->fs_magic != FS_MAGIC) && (fs->fs_magic != MTB_UFS_MAGIC)) {
535 if ((fs->fs_magic == FS_MAGIC &&
536 (fs->fs_version != UFS_EFISTYLE4NONEFI_VERSION_2 &&
537 fs->fs_version != UFS_VERSION_MIN)) ||
538 (fs->fs_magic == MTB_UFS_MAGIC &&
539 (fs->fs_version > MTB_UFS_VERSION_1 ||
540 fs->fs_version < MTB_UFS_VERSION_MIN))) {
543 special, fs->fs_version);
559 if (fs->fs_postblformat == FS_42POSTBLFMT)
560 fs->fs_nrpos = 8;
565 &fs->fs_fsmnt[0]);
568 switch (fs->fs_clean) {
608 printf("an unknown value (0x%x)\n", fs->fs_clean);
612 if (fs->fs_state == (FSOKAY - fs->fs_time)) {
637 maxfiles = (long)((((u_offset_t)fs->fs_ncg * (u_offset_t)fs->fs_ipg) -
638 (u_offset_t)fs->fs_cstotal.cs_nifree) +
639 ((u_offset_t)fs->fs_cstotal.cs_ndir * (u_offset_t)3));
1020 cur_bytes = blkoff(fs, addr);
1296 if (value > fs->fs_ncg - 1) {
1298 print(fs->fs_ncg - 1, 8, -8, 0);
1305 addr = cgtod(fs, cur_cgrp) << FRGSHIFT;
1496 temp *= NINDIR(fs) * BLKSIZE;
1680 dirp = (struct direct *)(cptr+blkoff(fs, addr));
1770 if (value > fs->fs_ncg - 1) {
1772 print(fs->fs_ncg - 1, 8, -8, 0);
1779 addr = cgsblock(fs, cur_cgrp) << FRGSHIFT;
2344 cptr += blkoff(fs, addr);
2474 cptr += blkoff(fs, addr);
2852 cptr += blkoff(fs, addr);
2900 bptr += blkoff(fs, temp);
2935 if (cgrp >= fs->fs_ncg) {
2944 return (cgtod(fs, cgrp) << FRGSHIFT);
2946 return (cgsblock(fs, cgrp) << FRGSHIFT);
2962 cptr += blkoff(fs, address);
3004 cptr += blkoff(fs, addr);
3065 cptr += blkoff(fs, addr);
3182 lblkno(fs, addr) != (bhdr.fwd)->blkno)) {
3183 curblkoff = blkoff(fs, cur_bytes);
3184 addr = bmap(lblkno(fs, cur_bytes)) << FRGSHIFT;
3251 bptr = sbptr + blkoff(fs, addr);
3277 if ((s_err = llseek(fd, (offset_t)(addr & fs->fs_bmask), 0)) == -1) {
3327 block = lblkno(fs, address);
3328 if (block >= fragstoblks(fs, fs->fs_size)) {
3340 if ((s_err = llseek(fd, (offset_t)(address & fs->fs_bmask), 0)) == -1) {
3461 cptr = sbptr + blkoff(fs, addr);
3515 if ((s_err = llseek(fd, (offset_t)(addr & fs->fs_bmask), 0)) == -1) {
3543 cptr += blkoff(fs, addr);
3611 struct fs *sb;
3636 offset = blkoff(fs, addr);
3706 cptr += blkoff(fs, addr);
3762 cptr += blkoff(fs, addr);
3812 if (cur_cgrp + count > fs->fs_ncg) {
3813 tcount = fs->fs_ncg - cur_cgrp;
3822 addr = cgtod(fs, cur_cgrp)
3831 cptr += blkoff(fs, addr);
3837 if (cur_cgrp + count - 1 > fs->fs_ncg) {
3838 tcount = fs->fs_ncg - cur_cgrp;
3866 if (fragoff(fs, addr)) {
3924 for (i = 1; i < fs->fs_ncg; i++)
3925 if (addr < (cgimin(fs, i) << FRGSHIFT))
3929 temp = (addr - (cgimin(fs, i) << FRGSHIFT)) >> FRGSHIFT;
3930 temp = (i * fs->fs_ipg) + fragstoblks(fs, temp) *
3931 INOPB(fs) + offset;
3932 if (count + offset > INOPB(fs)) {
3933 tcount = INOPB(fs) - offset;
4039 curoff += fs->fs_bsize;
4051 curioff = fs->fs_bsize *
4052 (fs->fs_bsize / sizeof (daddr_t));
4060 curioff *= (fs->fs_bsize /
4108 if (cur_cgrp + count > fs->fs_ncg) {
4109 tcount = fs->fs_ncg - cur_cgrp;
4117 addr = cgsblock(fs, cur_cgrp)
4126 cptr += blkoff(fs, addr);
4128 sb = (struct fs *)cptr;
4130 for (i = 0; i < fs->fs_ncg; i++)
4131 if (addr == cgsblock(fs, i) <<
4134 if (i == fs->fs_ncg)
4139 if (cur_cgrp + count - 1 > fs->fs_ncg) {
4140 tcount = fs->fs_ncg - cur_cgrp;
4204 cur_bytes = fragoff(fs, addr);
4207 filesize = fragroundup(fs,
4349 temp = cur_block - lblkno(fs, cur_bytes);
4364 temp = lblkno(fs, cur_bytes) - cur_block;
4376 tcount = (blkroundup(fs, addr+1)-addr) / objsz;
4544 printsb(struct fs *fs)
4550 t = fs->fs_time;
4552 if (fs->fs_postblformat == FS_42POSTBLFMT)
4553 fs->fs_nrpos = 8;
4554 printf("magic\t%lx\tformat\t%s\ttime\t%s", fs->fs_magic,
4555 fs->fs_postblformat == FS_42POSTBLFMT ? "static" : "dynamic",
4559 fs->fs_magic, ctime(&t));
4561 printf("version\t%x\n", fs->fs_version);
4563 fs->fs_cstotal.cs_nbfree, fs->fs_cstotal.cs_ndir,
4564 fs->fs_cstotal.cs_nifree, fs->fs_cstotal.cs_nffree);
4566 fs->fs_ncg, fs->fs_ncyl, fs->fs_size, fs->fs_dsize);
4568 fs->fs_bsize, fs->fs_bshift, fs->fs_bmask);
4570 fs->fs_fsize, fs->fs_fshift, fs->fs_fmask);
4572 fs->fs_frag, fs->fs_fragshift, fs->fs_fsbtodb);
4574 fs->fs_cpg, fs->fs_fpg / fs->fs_frag, fs->fs_fpg, fs->fs_ipg);
4576 fs->fs_minfree, fs->fs_optim == FS_OPTSPACE ? "space" : "time",
4577 fs->fs_maxcontig, fs->fs_maxbpg);
4581 fs->fs_rotdelay, fs->fs_id[0], fs->fs_id[1], fs->fs_rps);
4584 fs->fs_rotdelay, fs->fs_headswitch, fs->fs_trkseek, fs->fs_rps);
4587 fs->fs_ntrak, fs->fs_nsect, fs->fs_npsect, fs->fs_spc);
4588 printf("trackskew %ld\n", fs->fs_trackskew);
4591 fs->fs_rotdelay, fs->fs_rps);
4593 fs->fs_ntrak, fs->fs_nsect, fs->fs_spc);
4595 printf("si %ld\n", fs->fs_si);
4597 fs->fs_nindir, fs->fs_inopb, fs->fs_nspf);
4599 fs->fs_sblkno, fs->fs_cblkno, fs->fs_iblkno, fs->fs_dblkno);
4601 fs->fs_sbsize, fs->fs_cgsize, fs->fs_cgoffset, fs->fs_cgmask);
4603 fs->fs_csaddr, fs->fs_cssize, fs->fs_csshift, fs->fs_csmask);
4605 fs->fs_cgrotor, fs->fs_fmod, fs->fs_ronly);
4607 if (fs->fs_cpc != 0)
4609 fs->fs_nrpos);
4613 for (c = 0; c < fs->fs_cpc; c++) {
4616 for (i = 0; i < fs->fs_nrpos; i++) {
4618 if (fs_postbl(fs, c)[i] == -1)
4622 for (j = fs_postbl(fs, c)[i], k = 1; /* void */;
4623 j += fs_rotbl(fs)[j], k++) {
4627 if (fs_rotbl(fs)[j] == 0)
4633 if (fs->fs_postbl[c][i] == -1)
4636 for (j = fs->fs_postbl[c][i], k = 1; /* void */;
4637 j += fs->fs_rotbl[j], k++) {
4641 if (fs->fs_rotbl[j] == 0)
4648 sip = calloc(1, fs->fs_cssize);
4649 fs->fs_u.fs_csp = (struct csum *)sip;
4650 for (i = 0, j = 0; i < fs->fs_cssize; i += fs->fs_bsize, j++) {
4651 size = fs->fs_cssize - i < fs->fs_bsize ?
4652 fs->fs_cssize - i : fs->fs_bsize;
4654 (offset_t)fsbtodb(fs, (fs->fs_csaddr + j * fs->fs_frag))
4655 * fs->fs_fsize / fsbtodb(fs, 1), 0);
4657 free(fs->fs_u.fs_csp);
4662 for (i = 0; i < fs->fs_ncg; i++) {
4663 struct csum *cs = &fs->fs_cs(fs, i);
4669 free(fs->fs_u.fs_csp);
4671 if (fs->fs_ncyl % fs->fs_cpg) {
4673 i = fs->fs_ncyl % fs->fs_cpg);
4675 i * fs->fs_spc / NSPB(fs));
4692 fs->fs_postblformat == FS_42POSTBLFMT ?
4694 fsbtodb(fs, cgtod(fs, cg->cg_cgx)) * fs->fs_fsize / fsbtodb(fs, 1),
4699 fsbtodb(fs, cgtod(fs, cg->cg_cgx)) * fs->fs_fsize / fsbtodb(fs, 1),
4709 for (i = 1, j = 0; i < fs->fs_frag; i++) {
4714 pbits((unsigned char *)cg_inosused(cg), fs->fs_ipg);
4716 pbits(cg_blksfree(cg), fs->fs_fpg);
4718 for (i = 0; i < fs->fs_cpg; i++) {
4725 for (j = 0; j < fs->fs_nrpos; j++) {
4726 if (fs->fs_cpc == 0 ||
4728 fs_postbl(fs, i % fs->fs_cpc)[j] == -1)
4731 printf(" %d", cg_blks(fs, cg, i)[j]);
4735 if (fs->fs_cpc == 0 ||
4736 fs->fs_postbl[i % fs->fs_cpc][j] == -1)
4780 if (lblkno(fs, addr) == (bhdr.fwd)->blkno)
4803 cptr += blkoff(fs, cur_ino);
4816 sh *= NINDIR(fs);
4831 sh /= NINDIR(fs);
4832 addr = (nb << FRGSHIFT) + ((bn / sh) % NINDIR(fs)) * LONG;
4854 struct fs sblk;
4973 if (fs->fs_logbno == 0) {
4983 if ((b = getblk((u_offset_t)ldbtob(logbtodb(fs, fs->fs_logbno))))
5024 b = getblk((u_offset_t)ldbtob(logbtodb(fs, log_eb->extents[0].pbno)));
5062 if (fs->fs_magic == FS_MAGIC)
5064 fs->fs_logbno);
5067 fs->fs_logbno);
5115 logbtodb(fs, log_eb->extents[x].pbno);
5157 memcpy(va, bp + blkoff(fs, *addr), xfer);
5170 (bp + blkoff(fs, *addr));