Lines Matching refs:cg
102 typedef ufs2_daddr_t allocfcn_t(struct inode *ip, uint64_t cg,
125 static ufs1_daddr_t ffs_mapsearch(struct fs *, struct cg *, ufs2_daddr_t, int);
161 uint64_t cg, reclaimed; in ffs_alloc() local
198 cg = ino_to_cg(fs, ip->i_number); in ffs_alloc()
200 cg = dtog(fs, bpref); in ffs_alloc()
201 bno = ffs_hashalloc(ip, cg, bpref, size, size, ffs_alloccg); in ffs_alloc()
265 uint64_t cg, request, reclaimed; in ffs_realloccg() local
332 cg = dtog(fs, bprev); in ffs_realloccg()
334 bno = ffs_fragextend(ip, cg, bprev, osize, nsize); in ffs_realloccg()
400 bno = ffs_hashalloc(ip, cg, bpref, request, nsize, ffs_alloccg); in ffs_realloccg()
579 int i, cg, len, start_lvl, end_lvl, ssize; in ffs_reallocblks_ufs1() local
682 cg = dtog(fs, pref); in ffs_reallocblks_ufs1()
683 MPASS(cg < fs->fs_ncg); in ffs_reallocblks_ufs1()
685 if ((newblk = ffs_clusteralloc(ip, cg, pref, len)) != 0) in ffs_reallocblks_ufs1()
687 cg += 1; in ffs_reallocblks_ufs1()
688 if (cg >= fs->fs_ncg) in ffs_reallocblks_ufs1()
689 cg = 0; in ffs_reallocblks_ufs1()
696 ip->i_nextclustercg = cg; in ffs_reallocblks_ufs1()
846 int i, cg, len, start_lvl, end_lvl, ssize; in ffs_reallocblks_ufs2() local
949 cg = dtog(fs, pref); in ffs_reallocblks_ufs2()
950 MPASS(cg < fs->fs_ncg); in ffs_reallocblks_ufs2()
952 if ((newblk = ffs_clusteralloc(ip, cg, pref, len)) != 0) in ffs_reallocblks_ufs2()
954 cg += 1; in ffs_reallocblks_ufs2()
955 if (cg >= fs->fs_ncg) in ffs_reallocblks_ufs2()
956 cg = 0; in ffs_reallocblks_ufs2()
963 ip->i_nextclustercg = cg; in ffs_reallocblks_ufs2()
1122 uint64_t cg; in ffs_valloc() local
1142 cg = ino_to_cg(fs, ipref); in ffs_valloc()
1148 if (fs->fs_contigdirs[cg] < 255) in ffs_valloc()
1149 fs->fs_contigdirs[cg]++; in ffs_valloc()
1151 if (fs->fs_contigdirs[cg] > 0) in ffs_valloc()
1152 fs->fs_contigdirs[cg]--; in ffs_valloc()
1154 ino = (ino_t)ffs_hashalloc(pip, cg, ipref, mode, 0, in ffs_valloc()
1245 int cg, prefcg, curcg, dirsize, cgsize; in ffs_dirpref() local
1349 for (cg = prefcg; cg < fs->fs_ncg; cg++) in ffs_dirpref()
1350 if (fs->fs_cs(fs, cg).cs_ndir < maxndir && in ffs_dirpref()
1351 fs->fs_cs(fs, cg).cs_nifree >= minifree && in ffs_dirpref()
1352 fs->fs_cs(fs, cg).cs_nbfree >= minbfree) { in ffs_dirpref()
1353 if (fs->fs_contigdirs[cg] < maxcontigdirs) in ffs_dirpref()
1354 return ((ino_t)(fs->fs_ipg * cg)); in ffs_dirpref()
1356 for (cg = 0; cg < prefcg; cg++) in ffs_dirpref()
1357 if (fs->fs_cs(fs, cg).cs_ndir < maxndir && in ffs_dirpref()
1358 fs->fs_cs(fs, cg).cs_nifree >= minifree && in ffs_dirpref()
1359 fs->fs_cs(fs, cg).cs_nbfree >= minbfree) { in ffs_dirpref()
1360 if (fs->fs_contigdirs[cg] < maxcontigdirs) in ffs_dirpref()
1361 return ((ino_t)(fs->fs_ipg * cg)); in ffs_dirpref()
1366 for (cg = prefcg; cg < fs->fs_ncg; cg++) in ffs_dirpref()
1367 if (fs->fs_cs(fs, cg).cs_nifree >= avgifree) in ffs_dirpref()
1368 return ((ino_t)(fs->fs_ipg * cg)); in ffs_dirpref()
1369 for (cg = 0; cg < prefcg; cg++) in ffs_dirpref()
1370 if (fs->fs_cs(fs, cg).cs_nifree >= avgifree) in ffs_dirpref()
1372 return ((ino_t)(fs->fs_ipg * cg)); in ffs_dirpref()
1411 uint64_t cg, inocg; in ffs_blkpref_ufs1() local
1501 for (cg = startcg; cg < fs->fs_ncg; cg++) in ffs_blkpref_ufs1()
1502 if (fs->fs_cs(fs, cg).cs_nbfree >= avgbfree) { in ffs_blkpref_ufs1()
1503 fs->fs_cgrotor = cg; in ffs_blkpref_ufs1()
1504 return (cgdata(fs, cg)); in ffs_blkpref_ufs1()
1506 for (cg = 0; cg < startcg; cg++) in ffs_blkpref_ufs1()
1507 if (fs->fs_cs(fs, cg).cs_nbfree >= avgbfree) { in ffs_blkpref_ufs1()
1508 fs->fs_cgrotor = cg; in ffs_blkpref_ufs1()
1509 return (cgdata(fs, cg)); in ffs_blkpref_ufs1()
1531 uint64_t cg, inocg; in ffs_blkpref_ufs2() local
1621 for (cg = startcg; cg < fs->fs_ncg; cg++) in ffs_blkpref_ufs2()
1622 if (fs->fs_cs(fs, cg).cs_nbfree >= avgbfree) { in ffs_blkpref_ufs2()
1623 fs->fs_cgrotor = cg; in ffs_blkpref_ufs2()
1624 return (cgdata(fs, cg)); in ffs_blkpref_ufs2()
1626 for (cg = 0; cg < startcg; cg++) in ffs_blkpref_ufs2()
1627 if (fs->fs_cs(fs, cg).cs_nbfree >= avgbfree) { in ffs_blkpref_ufs2()
1628 fs->fs_cgrotor = cg; in ffs_blkpref_ufs2()
1629 return (cgdata(fs, cg)); in ffs_blkpref_ufs2()
1655 uint64_t cg, in ffs_hashalloc() argument
1663 uint64_t i, icg = cg; in ffs_hashalloc()
1674 result = (*allocator)(ip, cg, pref, size, rsize); in ffs_hashalloc()
1681 cg += i; in ffs_hashalloc()
1682 if (cg >= fs->fs_ncg) in ffs_hashalloc()
1683 cg -= fs->fs_ncg; in ffs_hashalloc()
1684 result = (*allocator)(ip, cg, 0, size, rsize); in ffs_hashalloc()
1693 cg = (icg + 2) % fs->fs_ncg; in ffs_hashalloc()
1695 result = (*allocator)(ip, cg, 0, size, rsize); in ffs_hashalloc()
1698 cg++; in ffs_hashalloc()
1699 if (cg == fs->fs_ncg) in ffs_hashalloc()
1700 cg = 0; in ffs_hashalloc()
1713 uint64_t cg, in ffs_fragextend() argument
1719 struct cg *cgp; in ffs_fragextend()
1730 if (fs->fs_cs(fs, cg).cs_nffree < numfrags(fs, nsize - osize)) in ffs_fragextend()
1739 if ((error = ffs_getcg(fs, ump->um_devvp, cg, 0, &bp, &cgp)) != 0) { in ffs_fragextend()
1740 ffs_checkcgintegrity(fs, cg, error); in ffs_fragextend()
1767 fs->fs_cs(fs, cg).cs_nffree -= nffree; in ffs_fragextend()
1769 ACTIVECLEAR(fs, cg); in ffs_fragextend()
1792 uint64_t cg, in ffs_alloccg() argument
1798 struct cg *cgp; in ffs_alloccg()
1808 if (fs->fs_cs(fs, cg).cs_nbfree == 0 && size == fs->fs_bsize) in ffs_alloccg()
1811 if ((error = ffs_getcg(fs, ump->um_devvp, cg, 0, &bp, &cgp)) != 0 || in ffs_alloccg()
1813 ffs_checkcgintegrity(fs, cg, error); in ffs_alloccg()
1819 ACTIVECLEAR(fs, cg); in ffs_alloccg()
1843 ACTIVECLEAR(fs, cg); in ffs_alloccg()
1861 fs->fs_cs(fs, cg).cs_nffree -= frags; in ffs_alloccg()
1863 blkno = cgbase(fs, cg) + bno; in ffs_alloccg()
1864 ACTIVECLEAR(fs, cg); in ffs_alloccg()
1895 struct cg *cgp; in ffs_alloccgblk()
1905 cgp = (struct cg *)bp->b_data; in ffs_alloccgblk()
1972 uint64_t cg, in ffs_clusteralloc() argument
1977 struct cg *cgp; in ffs_clusteralloc()
1988 MPASS(cg < fs->fs_ncg); in ffs_clusteralloc()
1989 if (fs->fs_maxcluster[cg] < len) in ffs_clusteralloc()
1992 if ((error = ffs_getcg(fs, ump->um_devvp, cg, 0, &bp, &cgp)) != 0) { in ffs_clusteralloc()
1993 ffs_checkcgintegrity(fs, cg, error); in ffs_clusteralloc()
2018 fs->fs_maxcluster[cg] = i; in ffs_clusteralloc()
2033 if (dtog(fs, bpref) != cg) in ffs_clusteralloc()
2034 bpref = cgdata(fs, cg); in ffs_clusteralloc()
2068 bno = cgbase(fs, cg) + blkstofrags(fs, got - run + 1); in ffs_clusteralloc()
2069 if (dtog(fs, bno) != cg) in ffs_clusteralloc()
2076 ACTIVECLEAR(fs, cg); in ffs_clusteralloc()
2084 uint64_t cg, in getinobuf() argument
2092 cg * fs->fs_ipg + cginoblk)), (int)fs->fs_bsize, 0, 0, in getinobuf()
2117 uint64_t cg, in ffs_nodealloccg() argument
2123 struct cg *cgp; in ffs_nodealloccg()
2134 if (fs->fs_cs(fs, cg).cs_nifree == 0) in ffs_nodealloccg()
2137 if ((error = ffs_getcg(fs, ump->um_devvp, cg, 0, &bp, &cgp)) != 0) { in ffs_nodealloccg()
2138 ffs_checkcgintegrity(fs, cg, error); in ffs_nodealloccg()
2163 (intmax_t)cg, (long)cgp->cg_irotor, fs->fs_fsmnt); in ffs_nodealloccg()
2192 ibp = getinobuf(ip, cg, old_initediblk, GB_LOCK_NOWAIT); in ffs_nodealloccg()
2202 ibp = getinobuf(ip, cg, old_initediblk, 0); in ffs_nodealloccg()
2235 error = ffs_getcg(fs, ump->um_devvp, cg, 0, &bp, &cgp); in ffs_nodealloccg()
2237 ACTIVECLEAR(fs, cg); in ffs_nodealloccg()
2247 ACTIVECLEAR(fs, cg); in ffs_nodealloccg()
2251 fs->fs_cs(fs, cg).cs_nifree--; in ffs_nodealloccg()
2256 fs->fs_cs(fs, cg).cs_ndir++; in ffs_nodealloccg()
2260 softdep_setup_inomapdep(bp, ip, cg * fs->fs_ipg + ipref, mode); in ffs_nodealloccg()
2262 return ((ino_t)(cg * fs->fs_ipg + ipref)); in ffs_nodealloccg()
2282 struct cg *cgp; in ffs_blkfree_cg()
2287 uint64_t cg; in ffs_blkfree_cg() local
2291 cg = dtog(fs, bno); in ffs_blkfree_cg()
2320 if ((error = ffs_getcg(fs, devvp, cg, GB_CVTENXIO, &bp, &cgp)) != 0) { in ffs_blkfree_cg()
2330 dbn = fragstoblks(fs, cgtod(fs, cg)); in ffs_blkfree_cg()
2332 dbn = fsbtodb(fs, cgtod(fs, cg)); in ffs_blkfree_cg()
2362 fs->fs_cs(fs, cg).cs_nbfree++; in ffs_blkfree_cg()
2385 fs->fs_cs(fs, cg).cs_nffree += i; in ffs_blkfree_cg()
2398 fs->fs_cs(fs, cg).cs_nffree -= fs->fs_frag; in ffs_blkfree_cg()
2402 fs->fs_cs(fs, cg).cs_nbfree++; in ffs_blkfree_cg()
2406 ACTIVECLEAR(fs, cg); in ffs_blkfree_cg()
2783 struct cg *cgp; in ffs_checkfreeblk()
2846 struct cg *cgp; in ffs_freefile()
2850 uint64_t cg; in ffs_freefile() local
2855 cg = ino_to_cg(fs, ino); in ffs_freefile()
2870 if ((error = ffs_getcg(fs, devvp, cg, GB_CVTENXIO, &bp, &cgp)) != 0) { in ffs_freefile()
2880 dbn = fragstoblks(fs, cgtod(fs, cg)); in ffs_freefile()
2882 dbn = fsbtodb(fs, cgtod(fs, cg)); in ffs_freefile()
2905 fs->fs_cs(fs, cg).cs_nifree++; in ffs_freefile()
2909 fs->fs_cs(fs, cg).cs_ndir--; in ffs_freefile()
2912 ACTIVECLEAR(fs, cg); in ffs_freefile()
2930 struct cg *cgp; in ffs_checkfreefile()
2933 uint64_t cg; in ffs_checkfreefile() local
2936 cg = ino_to_cg(fs, ino); in ffs_checkfreefile()
2941 if ((error = ffs_getcg(fs, devvp, cg, 0, &bp, &cgp)) != 0) in ffs_checkfreefile()
2958 struct cg *cgp, in ffs_mapsearch()
3022 uint64_t cg, in ffs_getcg() argument
3025 struct cg **cgpp) in ffs_getcg()
3028 struct cg *cgp; in ffs_getcg()
3039 blkno = fsbtodb(fs, cgtod(fs, cg)); in ffs_getcg()
3042 blkno = fragstoblks(fs, cgtod(fs, cg)); in ffs_getcg()
3049 cgp = (struct cg *)bp->b_data; in ffs_getcg()
3059 sfs->f_mntfromname, sfs->f_mntonname, (intmax_t)cg, in ffs_getcg()
3067 if (!cg_chkmagic(cgp) || cgp->cg_cgx != cg) { in ffs_getcg()
3076 "be 0x%x\n", (intmax_t)cg, cgp->cg_magic, in ffs_getcg()
3080 "cgx %u\n", (intmax_t)cg, cgp->cg_cgx); in ffs_getcg()
3110 struct cg *cgp; in ffs_ckhash_cg()
3112 cgp = (struct cg *)bp->b_data; in ffs_ckhash_cg()
3134 uint64_t cg, in ffs_checkcgintegrity() argument
3140 fs->fs_cstotal.cs_nffree -= fs->fs_cs(fs, cg).cs_nffree; in ffs_checkcgintegrity()
3141 fs->fs_cs(fs, cg).cs_nffree = 0; in ffs_checkcgintegrity()
3142 fs->fs_cstotal.cs_nbfree -= fs->fs_cs(fs, cg).cs_nbfree; in ffs_checkcgintegrity()
3143 fs->fs_cs(fs, cg).cs_nbfree = 0; in ffs_checkcgintegrity()
3144 fs->fs_cstotal.cs_nifree -= fs->fs_cs(fs, cg).cs_nifree; in ffs_checkcgintegrity()
3145 fs->fs_cs(fs, cg).cs_nifree = 0; in ffs_checkcgintegrity()
3146 fs->fs_maxcluster[cg] = 0; in ffs_checkcgintegrity()