Lines Matching refs:fs
61 #define ffs_fserr(fs, uid, cp) do { \ argument
63 (fs)->fs_fsmnt, (cp)); \
67 struct buf * ffs_cgread(struct fs *, struct inode *, u_int);
74 daddr_t ffs_mapsearch(struct fs *, struct cg *, daddr_t, int);
103 struct fs *fs; in ffs_alloc() local
109 fs = ip->i_fs; in ffs_alloc()
111 if ((u_int)size > fs->fs_bsize || fragoff(fs, size) != 0) { in ffs_alloc()
113 ip->i_dev, fs->fs_bsize, size, fs->fs_fsmnt); in ffs_alloc()
119 if (size == fs->fs_bsize && fs->fs_cstotal.cs_nbfree == 0) in ffs_alloc()
121 if (cred->cr_uid != 0 && freespace(fs, fs->fs_minfree) <= 0) in ffs_alloc()
132 if (bpref >= fs->fs_size) in ffs_alloc()
135 cg = ino_to_cg(fs, ip->i_number); in ffs_alloc()
137 cg = dtog(fs, bpref); in ffs_alloc()
154 ffs_fserr(fs, cred->cr_uid, "file system full"); in ffs_alloc()
156 fs->fs_fsmnt); in ffs_alloc()
174 struct fs *fs; in ffs_realloccg() local
183 fs = ip->i_fs; in ffs_realloccg()
185 if ((u_int)osize > fs->fs_bsize || fragoff(fs, osize) != 0 || in ffs_realloccg()
186 (u_int)nsize > fs->fs_bsize || fragoff(fs, nsize) != 0) { in ffs_realloccg()
189 ip->i_dev, fs->fs_bsize, osize, nsize, fs->fs_fsmnt); in ffs_realloccg()
195 if (cred->cr_uid != 0 && freespace(fs, fs->fs_minfree) <= 0) in ffs_realloccg()
202 ip->i_dev, fs->fs_bsize, (long long)bprev, fs->fs_fsmnt); in ffs_realloccg()
210 if ((error = bread(ITOV(ip), lbprev, fs->fs_bsize, &bp)) != 0) in ffs_realloccg()
224 cg = dtog(fs, bprev); in ffs_realloccg()
229 if (bp->b_blkno != fsbtodb(fs, bno)) in ffs_realloccg()
248 if (bpref >= fs->fs_size) in ffs_realloccg()
250 switch (fs->fs_optim) { in ffs_realloccg()
260 if (fs->fs_minfree < 5 || in ffs_realloccg()
261 fs->fs_cstotal.cs_nffree > in ffs_realloccg()
262 fs->fs_dsize * fs->fs_minfree / (2 * 100)) in ffs_realloccg()
264 fs->fs_optim = FS_OPTTIME; in ffs_realloccg()
277 request = fs->fs_bsize; in ffs_realloccg()
278 if (fs->fs_cstotal.cs_nffree < in ffs_realloccg()
279 fs->fs_dsize * (fs->fs_minfree - 2) / 100) in ffs_realloccg()
281 fs->fs_optim = FS_OPTSPACE; in ffs_realloccg()
285 ip->i_dev, fs->fs_optim, fs->fs_fsmnt); in ffs_realloccg()
296 ffs_blkfree(ip, bno + numfrags(fs, nsize), in ffs_realloccg()
301 bp->b_blkno = fsbtodb(fs, bno); in ffs_realloccg()
318 ffs_fserr(fs, cred->cr_uid, "file system full"); in ffs_realloccg()
320 fs->fs_fsmnt); in ffs_realloccg()
360 struct fs *fs; in ffs_inode_alloc() local
367 fs = pip->i_fs; in ffs_inode_alloc()
368 if (fs->fs_cstotal.cs_nifree == 0) in ffs_inode_alloc()
375 if (ipref >= fs->fs_ncg * fs->fs_ipg) in ffs_inode_alloc()
377 cg = ino_to_cg(fs, ipref); in ffs_inode_alloc()
384 if (fs->fs_contigdirs[cg] < 255) in ffs_inode_alloc()
385 fs->fs_contigdirs[cg]++; in ffs_inode_alloc()
387 if (fs->fs_contigdirs[cg] > 0) in ffs_inode_alloc()
388 fs->fs_contigdirs[cg]--; in ffs_inode_alloc()
403 DIP(ip, mode), ip->i_number, fs->fs_fsmnt); in ffs_inode_alloc()
409 fs->fs_fsmnt, ino, (long long)DIP(ip, blocks)); in ffs_inode_alloc()
429 ffs_fserr(fs, cred->cr_uid, "out of inodes"); in ffs_inode_alloc()
431 fs->fs_fsmnt); in ffs_inode_alloc()
452 struct fs *fs; in ffs_dirpref() local
460 fs = pip->i_fs; in ffs_dirpref()
462 avgifree = fs->fs_cstotal.cs_nifree / fs->fs_ncg; in ffs_dirpref()
463 avgbfree = fs->fs_cstotal.cs_nbfree / fs->fs_ncg; in ffs_dirpref()
464 avgndir = fs->fs_cstotal.cs_ndir / fs->fs_ncg; in ffs_dirpref()
470 prefcg = arc4random_uniform(fs->fs_ncg); in ffs_dirpref()
472 minndir = fs->fs_ipg; in ffs_dirpref()
473 for (cg = prefcg; cg < fs->fs_ncg; cg++) in ffs_dirpref()
474 if (fs->fs_cs(fs, cg).cs_ndir < minndir && in ffs_dirpref()
475 fs->fs_cs(fs, cg).cs_nifree >= avgifree && in ffs_dirpref()
476 fs->fs_cs(fs, cg).cs_nbfree >= avgbfree) { in ffs_dirpref()
478 minndir = fs->fs_cs(fs, cg).cs_ndir; in ffs_dirpref()
481 if (fs->fs_cs(fs, cg).cs_ndir < minndir && in ffs_dirpref()
482 fs->fs_cs(fs, cg).cs_nifree >= avgifree && in ffs_dirpref()
483 fs->fs_cs(fs, cg).cs_nbfree >= avgbfree) { in ffs_dirpref()
485 minndir = fs->fs_cs(fs, cg).cs_ndir; in ffs_dirpref()
490 prefcg = ino_to_cg(fs, pip->i_number); in ffs_dirpref()
496 maxndir = min(avgndir + fs->fs_ipg / 16, fs->fs_ipg); in ffs_dirpref()
504 cgsize = fs->fs_fsize * fs->fs_fpg; in ffs_dirpref()
505 dirsize = fs->fs_avgfilesize * fs->fs_avgfpdir; in ffs_dirpref()
506 curdirsize = avgndir ? (cgsize - avgbfree * fs->fs_bsize) / avgndir : 0; in ffs_dirpref()
512 maxcontigdirs = min(avgbfree * fs->fs_bsize / dirsize, 255); in ffs_dirpref()
513 if (fs->fs_avgfpdir > 0) in ffs_dirpref()
515 fs->fs_ipg / fs->fs_avgfpdir); in ffs_dirpref()
541 for (cg = prefcg; cg < fs->fs_ncg; cg++) in ffs_dirpref()
542 if (fs->fs_cs(fs, cg).cs_ndir < maxndir && in ffs_dirpref()
543 fs->fs_cs(fs, cg).cs_nifree >= minifree && in ffs_dirpref()
544 fs->fs_cs(fs, cg).cs_nbfree >= minbfree) { in ffs_dirpref()
545 if (fs->fs_contigdirs[cg] < maxcontigdirs) in ffs_dirpref()
549 if (fs->fs_cs(fs, cg).cs_ndir < maxndir && in ffs_dirpref()
550 fs->fs_cs(fs, cg).cs_nifree >= minifree && in ffs_dirpref()
551 fs->fs_cs(fs, cg).cs_nbfree >= minbfree) { in ffs_dirpref()
552 if (fs->fs_contigdirs[cg] < maxcontigdirs) in ffs_dirpref()
558 for (cg = prefcg; cg < fs->fs_ncg; cg++) in ffs_dirpref()
559 if (fs->fs_cs(fs, cg).cs_nifree >= avgifree) in ffs_dirpref()
562 if (fs->fs_cs(fs, cg).cs_nifree >= avgifree) in ffs_dirpref()
565 return ((ufsino_t)(fs->fs_ipg * cg)); in ffs_dirpref()
596 struct fs *fs; in ffs1_blkpref() local
602 fs = ip->i_fs; in ffs1_blkpref()
614 inocg = ino_to_cg(fs, ip->i_number); in ffs1_blkpref()
621 pref = cgmeta(fs, inocg); in ffs1_blkpref()
626 if (indx == -1 && lbn < NDADDR + NINDIR(fs) && in ffs1_blkpref()
628 pref = ip->i_din1->di_db[NDADDR - 1] + fs->fs_frag; in ffs1_blkpref()
638 if (pref != 0 && pref >= cgdata(fs, inocg) && in ffs1_blkpref()
639 pref < cgbase(fs, inocg + 1)) in ffs1_blkpref()
640 return (pref + fs->fs_frag); in ffs1_blkpref()
648 if (indx % fs->fs_maxbpg == 0 || bap[indx - 1] == 0) { in ffs1_blkpref()
654 return (cgmeta(fs, inocg)); in ffs1_blkpref()
660 if (lbn < NDADDR + NINDIR(fs)) in ffs1_blkpref()
661 return (cgdata(fs, inocg)); in ffs1_blkpref()
667 startcg = inocg + lbn / fs->fs_maxbpg; in ffs1_blkpref()
669 startcg = dtog(fs, bap[indx - 1]) + 1; in ffs1_blkpref()
670 startcg %= fs->fs_ncg; in ffs1_blkpref()
671 avgbfree = fs->fs_cstotal.cs_nbfree / fs->fs_ncg; in ffs1_blkpref()
672 for (cg = startcg; cg < fs->fs_ncg; cg++) in ffs1_blkpref()
673 if (fs->fs_cs(fs, cg).cs_nbfree >= avgbfree) { in ffs1_blkpref()
674 fs->fs_cgrotor = cg; in ffs1_blkpref()
675 return (cgdata(fs, cg)); in ffs1_blkpref()
678 if (fs->fs_cs(fs, cg).cs_nbfree >= avgbfree) { in ffs1_blkpref()
679 fs->fs_cgrotor = cg; in ffs1_blkpref()
680 return (cgdata(fs, cg)); in ffs1_blkpref()
687 return (bap[indx - 1] + fs->fs_frag); in ffs1_blkpref()
697 struct fs *fs; in ffs2_blkpref() local
703 fs = ip->i_fs; in ffs2_blkpref()
715 inocg = ino_to_cg(fs, ip->i_number); in ffs2_blkpref()
722 pref = cgmeta(fs, inocg); in ffs2_blkpref()
727 if (indx == -1 && lbn < NDADDR + NINDIR(fs) && in ffs2_blkpref()
729 pref = ip->i_din2->di_db[NDADDR - 1] + fs->fs_frag; in ffs2_blkpref()
739 if (pref != 0 && pref >= cgdata(fs, inocg) && in ffs2_blkpref()
740 pref < cgbase(fs, inocg + 1)) in ffs2_blkpref()
741 return (pref + fs->fs_frag); in ffs2_blkpref()
750 if (indx % fs->fs_maxbpg == 0 || bap[indx - 1] == 0) { in ffs2_blkpref()
756 return (cgmeta(fs, inocg)); in ffs2_blkpref()
762 if (lbn < NDADDR + NINDIR(fs)) in ffs2_blkpref()
763 return (cgdata(fs, inocg)); in ffs2_blkpref()
769 startcg = inocg + lbn / fs->fs_maxbpg; in ffs2_blkpref()
771 startcg = dtog(fs, bap[indx - 1] + 1); in ffs2_blkpref()
773 startcg %= fs->fs_ncg; in ffs2_blkpref()
774 avgbfree = fs->fs_cstotal.cs_nbfree / fs->fs_ncg; in ffs2_blkpref()
776 for (cg = startcg; cg < fs->fs_ncg; cg++) in ffs2_blkpref()
777 if (fs->fs_cs(fs, cg).cs_nbfree >= avgbfree) in ffs2_blkpref()
778 return (cgbase(fs, cg) + fs->fs_frag); in ffs2_blkpref()
781 if (fs->fs_cs(fs, cg).cs_nbfree >= avgbfree) in ffs2_blkpref()
782 return (cgbase(fs, cg) + fs->fs_frag); in ffs2_blkpref()
790 return (bap[indx - 1] + fs->fs_frag); in ffs2_blkpref()
806 struct fs *fs; in ffs_hashalloc() local
810 fs = ip->i_fs; in ffs_hashalloc()
820 for (i = 1; i < fs->fs_ncg; i *= 2) { in ffs_hashalloc()
822 if (cg >= fs->fs_ncg) in ffs_hashalloc()
823 cg -= fs->fs_ncg; in ffs_hashalloc()
833 cg = (icg + 2) % fs->fs_ncg; in ffs_hashalloc()
834 for (i = 2; i < fs->fs_ncg; i++) { in ffs_hashalloc()
839 if (cg == fs->fs_ncg) in ffs_hashalloc()
846 ffs_cgread(struct fs *fs, struct inode *ip, u_int cg) in ffs_cgread() argument
850 if (bread(ip->i_devvp, fsbtodb(fs, cgtod(fs, cg)), in ffs_cgread()
851 (int)fs->fs_cgsize, &bp)) { in ffs_cgread()
873 struct fs *fs; in ffs_fragextend() local
880 fs = ip->i_fs; in ffs_fragextend()
881 if (fs->fs_cs(fs, cg).cs_nffree < numfrags(fs, nsize - osize)) in ffs_fragextend()
883 frags = numfrags(fs, nsize); in ffs_fragextend()
884 bbase = fragnum(fs, bprev); in ffs_fragextend()
885 if (bbase > fragnum(fs, (bprev + frags - 1))) { in ffs_fragextend()
890 if (!(bp = ffs_cgread(fs, ip, cg))) in ffs_fragextend()
898 bno = dtogd(fs, bprev); in ffs_fragextend()
899 for (i = numfrags(fs, osize); i < frags; i++) in ffs_fragextend()
910 for (i = frags; i < fs->fs_frag - bbase; i++) in ffs_fragextend()
913 cgp->cg_frsum[i - numfrags(fs, osize)]--; in ffs_fragextend()
916 for (i = numfrags(fs, osize); i < frags; i++) { in ffs_fragextend()
919 fs->fs_cstotal.cs_nffree--; in ffs_fragextend()
920 fs->fs_cs(fs, cg).cs_nffree--; in ffs_fragextend()
922 fs->fs_fmod = 1; in ffs_fragextend()
937 struct fs *fs; in ffs_alloccg() local
944 fs = ip->i_fs; in ffs_alloccg()
945 if (fs->fs_cs(fs, cg).cs_nbfree == 0 && size == fs->fs_bsize) in ffs_alloccg()
948 if (!(bp = ffs_cgread(fs, ip, cg))) in ffs_alloccg()
952 if (cgp->cg_cs.cs_nbfree == 0 && size == fs->fs_bsize) { in ffs_alloccg()
961 if (size == fs->fs_bsize) { in ffs_alloccg()
972 frags = numfrags(fs, size); in ffs_alloccg()
973 for (allocsiz = frags; allocsiz < fs->fs_frag; allocsiz++) in ffs_alloccg()
976 if (allocsiz == fs->fs_frag) { in ffs_alloccg()
986 bpref = dtogd(fs, bno); in ffs_alloccg()
987 for (i = frags; i < fs->fs_frag; i++) in ffs_alloccg()
989 i = fs->fs_frag - frags; in ffs_alloccg()
991 fs->fs_cstotal.cs_nffree += i; in ffs_alloccg()
992 fs->fs_cs(fs, cg).cs_nffree += i; in ffs_alloccg()
993 fs->fs_fmod = 1; in ffs_alloccg()
998 bno = ffs_mapsearch(fs, cgp, bpref, allocsiz); in ffs_alloccg()
1007 fs->fs_cstotal.cs_nffree -= frags; in ffs_alloccg()
1008 fs->fs_cs(fs, cg).cs_nffree -= frags; in ffs_alloccg()
1009 fs->fs_fmod = 1; in ffs_alloccg()
1014 blkno = cgbase(fs, cg) + bno; in ffs_alloccg()
1027 struct fs *fs; in ffs_alloccgblk() local
1033 fs = ip->i_fs; in ffs_alloccgblk()
1039 } else if ((cgbpref = dtog(fs, bpref)) != cgp->cg_cgx) { in ffs_alloccgblk()
1041 if (bpref < cgdata(fs, cgbpref)) in ffs_alloccgblk()
1042 bpref = cgmeta(fs, cgp->cg_cgx); in ffs_alloccgblk()
1044 bpref = cgdata(fs, cgp->cg_cgx); in ffs_alloccgblk()
1049 bno = dtogd(fs, blknum(fs, bpref)); in ffs_alloccgblk()
1050 if (ffs_isblock(fs, blksfree, fragstoblks(fs, bno))) in ffs_alloccgblk()
1055 bno = ffs_mapsearch(fs, cgp, bpref, (int) fs->fs_frag); in ffs_alloccgblk()
1060 if (bno >= dtogd(fs, cgdata(fs, cgp->cg_cgx))) in ffs_alloccgblk()
1064 blkno = fragstoblks(fs, bno); in ffs_alloccgblk()
1065 ffs_clrblock(fs, blksfree, blkno); in ffs_alloccgblk()
1066 ffs_clusteracct(fs, cgp, blkno, -1); in ffs_alloccgblk()
1068 fs->fs_cstotal.cs_nbfree--; in ffs_alloccgblk()
1069 fs->fs_cs(fs, cgp->cg_cgx).cs_nbfree--; in ffs_alloccgblk()
1071 if (fs->fs_magic != FS_UFS2_MAGIC) { in ffs_alloccgblk()
1072 cylno = cbtocylno(fs, bno); in ffs_alloccgblk()
1073 cg_blks(fs, cgp, cylno)[cbtorpos(fs, bno)]--; in ffs_alloccgblk() local
1077 fs->fs_fmod = 1; in ffs_alloccgblk()
1078 blkno = cgbase(fs, cgp->cg_cgx) + bno; in ffs_alloccgblk()
1087 struct fs *fs; in ffs_nodealloccg() local
1102 fs = ip->i_fs; in ffs_nodealloccg()
1103 if (fs->fs_cs(fs, cg).cs_nifree == 0) in ffs_nodealloccg()
1106 if (!(bp = ffs_cgread(fs, ip, cg))) in ffs_nodealloccg()
1127 ipref %= fs->fs_ipg; in ffs_nodealloccg()
1137 len = howmany(fs->fs_ipg - cgp->cg_irotor, NBBY); in ffs_nodealloccg()
1154 cg, cgp->cg_irotor, fs->fs_fsmnt); in ffs_nodealloccg()
1177 printf("fs = %s\n", fs->fs_fsmnt); in ffs_nodealloccg()
1190 if (fs->fs_magic == FS_UFS2_MAGIC && in ffs_nodealloccg()
1192 ipref + INOPB(fs) > cgp->cg_initediblk && in ffs_nodealloccg()
1196 ibp = getblk(ip->i_devvp, fsbtodb(fs, in ffs_nodealloccg()
1197 ino_to_fsba(fs, cg * fs->fs_ipg + cgp->cg_initediblk)), in ffs_nodealloccg()
1198 (int)fs->fs_bsize, 0, INFSLP); in ffs_nodealloccg()
1200 memset(ibp->b_data, 0, fs->fs_bsize); in ffs_nodealloccg()
1204 for (i = 0; i < INOPB(fs); i++) { in ffs_nodealloccg()
1211 cgp->cg_initediblk += INOPB(fs); in ffs_nodealloccg()
1219 fs->fs_cstotal.cs_nifree--; in ffs_nodealloccg()
1220 fs->fs_cs(fs, cg).cs_nifree--; in ffs_nodealloccg()
1221 fs->fs_fmod = 1; /* file system was modified */ in ffs_nodealloccg()
1226 fs->fs_cstotal.cs_ndir++; in ffs_nodealloccg()
1227 fs->fs_cs(fs, cg).cs_ndir++; in ffs_nodealloccg()
1238 return (cg * fs->fs_ipg + ipref); in ffs_nodealloccg()
1251 struct fs *fs; in ffs_blkfree() local
1258 fs = ip->i_fs; in ffs_blkfree()
1259 if ((u_int)size > fs->fs_bsize || fragoff(fs, size) != 0 || in ffs_blkfree()
1260 fragnum(fs, bno) + numfrags(fs, size) > fs->fs_frag) { in ffs_blkfree()
1262 ip->i_dev, fs->fs_bsize, size, fs->fs_fsmnt); in ffs_blkfree()
1265 cg = dtog(fs, bno); in ffs_blkfree()
1266 if ((u_int)bno >= fs->fs_size) { in ffs_blkfree()
1269 ffs_fserr(fs, DIP(ip, uid), "bad block"); in ffs_blkfree()
1272 if (!(bp = ffs_cgread(fs, ip, cg))) in ffs_blkfree()
1280 bno = dtogd(fs, bno); in ffs_blkfree()
1281 if (size == fs->fs_bsize) { in ffs_blkfree()
1282 blkno = fragstoblks(fs, bno); in ffs_blkfree()
1283 if (!ffs_isfreeblock(fs, cg_blksfree(cgp), blkno)) { in ffs_blkfree()
1285 ip->i_dev, (long long)bno, fs->fs_fsmnt); in ffs_blkfree()
1288 ffs_setblock(fs, cg_blksfree(cgp), blkno); in ffs_blkfree()
1289 ffs_clusteracct(fs, cgp, blkno, 1); in ffs_blkfree()
1291 fs->fs_cstotal.cs_nbfree++; in ffs_blkfree()
1292 fs->fs_cs(fs, cg).cs_nbfree++; in ffs_blkfree()
1294 if (fs->fs_magic != FS_UFS2_MAGIC) { in ffs_blkfree()
1295 i = cbtocylno(fs, bno); in ffs_blkfree()
1296 cg_blks(fs, cgp, i)[cbtorpos(fs, bno)]++; in ffs_blkfree() local
1301 bbase = bno - fragnum(fs, bno); in ffs_blkfree()
1305 blk = blkmap(fs, cg_blksfree(cgp), bbase); in ffs_blkfree()
1306 ffs_fragacct(fs, blk, cgp->cg_frsum, -1); in ffs_blkfree()
1310 frags = numfrags(fs, size); in ffs_blkfree()
1315 fs->fs_fsmnt); in ffs_blkfree()
1321 fs->fs_cstotal.cs_nffree += i; in ffs_blkfree()
1322 fs->fs_cs(fs, cg).cs_nffree += i; in ffs_blkfree()
1326 blk = blkmap(fs, cg_blksfree(cgp), bbase); in ffs_blkfree()
1327 ffs_fragacct(fs, blk, cgp->cg_frsum, 1); in ffs_blkfree()
1331 blkno = fragstoblks(fs, bbase); in ffs_blkfree()
1332 if (ffs_isblock(fs, cg_blksfree(cgp), blkno)) { in ffs_blkfree()
1333 cgp->cg_cs.cs_nffree -= fs->fs_frag; in ffs_blkfree()
1334 fs->fs_cstotal.cs_nffree -= fs->fs_frag; in ffs_blkfree()
1335 fs->fs_cs(fs, cg).cs_nffree -= fs->fs_frag; in ffs_blkfree()
1336 ffs_clusteracct(fs, cgp, blkno, 1); in ffs_blkfree()
1338 fs->fs_cstotal.cs_nbfree++; in ffs_blkfree()
1339 fs->fs_cs(fs, cg).cs_nbfree++; in ffs_blkfree()
1341 if (fs->fs_magic != FS_UFS2_MAGIC) { in ffs_blkfree()
1342 i = cbtocylno(fs, bbase); in ffs_blkfree()
1343 cg_blks(fs, cgp, i)[cbtorpos(fs, bbase)]++; in ffs_blkfree() local
1348 fs->fs_fmod = 1; in ffs_blkfree()
1365 struct fs *fs; in ffs_freefile() local
1371 fs = pip->i_fs; in ffs_freefile()
1372 if (ino >= fs->fs_ipg * fs->fs_ncg) in ffs_freefile()
1374 pip->i_dev, ino, fs->fs_fsmnt); in ffs_freefile()
1376 cg = ino_to_cg(fs, ino); in ffs_freefile()
1377 if (!(bp = ffs_cgread(fs, pip, cg))) in ffs_freefile()
1385 ino %= fs->fs_ipg; in ffs_freefile()
1388 pip->i_dev, ino, fs->fs_fsmnt); in ffs_freefile()
1389 if (fs->fs_ronly == 0) in ffs_freefile()
1396 fs->fs_cstotal.cs_nifree++; in ffs_freefile()
1397 fs->fs_cs(fs, cg).cs_nifree++; in ffs_freefile()
1400 fs->fs_cstotal.cs_ndir--; in ffs_freefile()
1401 fs->fs_cs(fs, cg).cs_ndir--; in ffs_freefile()
1403 fs->fs_fmod = 1; in ffs_freefile()
1416 ffs_mapsearch(struct fs *fs, struct cg *cgp, daddr_t bpref, int allocsiz) in ffs_mapsearch() argument
1427 start = dtogd(fs, bpref) / NBBY; in ffs_mapsearch()
1430 len = howmany(fs->fs_fpg, NBBY) - start; in ffs_mapsearch()
1432 (u_char *)fragtbl[fs->fs_frag], in ffs_mapsearch()
1433 (u_char)(1 << (allocsiz - 1 + (fs->fs_frag % NBBY)))); in ffs_mapsearch()
1438 (u_char *)fragtbl[fs->fs_frag], in ffs_mapsearch()
1439 (u_char)(1 << (allocsiz - 1 + (fs->fs_frag % NBBY)))); in ffs_mapsearch()
1442 start, len, fs->fs_fsmnt); in ffs_mapsearch()
1453 for (i = bno + NBBY; bno < i; bno += fs->fs_frag) { in ffs_mapsearch()
1454 blk = blkmap(fs, cg_blksfree(cgp), bno); in ffs_mapsearch()
1458 for (pos = 0; pos <= fs->fs_frag - allocsiz; pos++) { in ffs_mapsearch()
1465 printf("bno = %lld, fs = %s\n", (long long)bno, fs->fs_fsmnt); in ffs_mapsearch()
1476 ffs_clusteracct(struct fs *fs, struct cg *cgp, daddr_t blkno, int cnt) in ffs_clusteracct() argument
1483 if (fs->fs_contigsumsize <= 0) in ffs_clusteracct()
1498 end = start + fs->fs_contigsumsize; in ffs_clusteracct()
1519 end = start - fs->fs_contigsumsize; in ffs_clusteracct()
1541 if (i > fs->fs_contigsumsize) in ffs_clusteracct()
1542 i = fs->fs_contigsumsize; in ffs_clusteracct()
1551 lp = &sump[fs->fs_contigsumsize]; in ffs_clusteracct()
1552 for (i = fs->fs_contigsumsize; i > 0; i--) in ffs_clusteracct()
1555 fs->fs_maxcluster[cgp->cg_cgx] = i; in ffs_clusteracct()