Lines Matching refs:cg
104 typedef ufs2_daddr_t allocfcn_t(struct inode *ip, uint64_t cg,
127 static ufs1_daddr_t ffs_mapsearch(struct fs *, struct cg *, ufs2_daddr_t, int);
163 uint64_t cg, reclaimed; in ffs_alloc() local
200 cg = ino_to_cg(fs, ip->i_number); in ffs_alloc()
202 cg = dtog(fs, bpref); in ffs_alloc()
203 bno = ffs_hashalloc(ip, cg, bpref, size, size, ffs_alloccg); in ffs_alloc()
267 uint64_t cg, request, reclaimed; in ffs_realloccg() local
334 cg = dtog(fs, bprev); in ffs_realloccg()
336 bno = ffs_fragextend(ip, cg, bprev, osize, nsize); in ffs_realloccg()
402 bno = ffs_hashalloc(ip, cg, bpref, request, nsize, ffs_alloccg); in ffs_realloccg()
582 int i, cg, len, start_lvl, end_lvl, ssize; in ffs_reallocblks_ufs1() local
685 cg = dtog(fs, pref); in ffs_reallocblks_ufs1()
687 if ((newblk = ffs_clusteralloc(ip, cg, pref, len)) != 0) in ffs_reallocblks_ufs1()
689 cg += 1; in ffs_reallocblks_ufs1()
690 if (cg >= fs->fs_ncg) in ffs_reallocblks_ufs1()
691 cg = 0; in ffs_reallocblks_ufs1()
698 ip->i_nextclustercg = cg; in ffs_reallocblks_ufs1()
848 int i, cg, len, start_lvl, end_lvl, ssize; in ffs_reallocblks_ufs2() local
951 cg = dtog(fs, pref); in ffs_reallocblks_ufs2()
953 if ((newblk = ffs_clusteralloc(ip, cg, pref, len)) != 0) in ffs_reallocblks_ufs2()
955 cg += 1; in ffs_reallocblks_ufs2()
956 if (cg >= fs->fs_ncg) in ffs_reallocblks_ufs2()
957 cg = 0; in ffs_reallocblks_ufs2()
964 ip->i_nextclustercg = cg; in ffs_reallocblks_ufs2()
1123 uint64_t cg; in ffs_valloc() local
1143 cg = ino_to_cg(fs, ipref); in ffs_valloc()
1149 if (fs->fs_contigdirs[cg] < 255) in ffs_valloc()
1150 fs->fs_contigdirs[cg]++; in ffs_valloc()
1152 if (fs->fs_contigdirs[cg] > 0) in ffs_valloc()
1153 fs->fs_contigdirs[cg]--; in ffs_valloc()
1155 ino = (ino_t)ffs_hashalloc(pip, cg, ipref, mode, 0, in ffs_valloc()
1246 int cg, prefcg, curcg, dirsize, cgsize; in ffs_dirpref() local
1350 for (cg = prefcg; cg < fs->fs_ncg; cg++) in ffs_dirpref()
1351 if (fs->fs_cs(fs, cg).cs_ndir < maxndir && in ffs_dirpref()
1352 fs->fs_cs(fs, cg).cs_nifree >= minifree && in ffs_dirpref()
1353 fs->fs_cs(fs, cg).cs_nbfree >= minbfree) { in ffs_dirpref()
1354 if (fs->fs_contigdirs[cg] < maxcontigdirs) in ffs_dirpref()
1355 return ((ino_t)(fs->fs_ipg * cg)); in ffs_dirpref()
1357 for (cg = 0; cg < prefcg; cg++) in ffs_dirpref()
1358 if (fs->fs_cs(fs, cg).cs_ndir < maxndir && in ffs_dirpref()
1359 fs->fs_cs(fs, cg).cs_nifree >= minifree && in ffs_dirpref()
1360 fs->fs_cs(fs, cg).cs_nbfree >= minbfree) { in ffs_dirpref()
1361 if (fs->fs_contigdirs[cg] < maxcontigdirs) in ffs_dirpref()
1362 return ((ino_t)(fs->fs_ipg * cg)); in ffs_dirpref()
1367 for (cg = prefcg; cg < fs->fs_ncg; cg++) in ffs_dirpref()
1368 if (fs->fs_cs(fs, cg).cs_nifree >= avgifree) in ffs_dirpref()
1369 return ((ino_t)(fs->fs_ipg * cg)); in ffs_dirpref()
1370 for (cg = 0; cg < prefcg; cg++) in ffs_dirpref()
1371 if (fs->fs_cs(fs, cg).cs_nifree >= avgifree) in ffs_dirpref()
1373 return ((ino_t)(fs->fs_ipg * cg)); in ffs_dirpref()
1412 uint64_t cg, inocg; in ffs_blkpref_ufs1() local
1496 for (cg = startcg; cg < fs->fs_ncg; cg++) in ffs_blkpref_ufs1()
1497 if (fs->fs_cs(fs, cg).cs_nbfree >= avgbfree) { in ffs_blkpref_ufs1()
1498 fs->fs_cgrotor = cg; in ffs_blkpref_ufs1()
1499 return (cgdata(fs, cg)); in ffs_blkpref_ufs1()
1501 for (cg = 0; cg <= startcg; 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()
1524 uint64_t cg, inocg; in ffs_blkpref_ufs2() local
1608 for (cg = startcg; cg < fs->fs_ncg; cg++) in ffs_blkpref_ufs2()
1609 if (fs->fs_cs(fs, cg).cs_nbfree >= avgbfree) { in ffs_blkpref_ufs2()
1610 fs->fs_cgrotor = cg; in ffs_blkpref_ufs2()
1611 return (cgdata(fs, cg)); in ffs_blkpref_ufs2()
1613 for (cg = 0; cg <= startcg; cg++) in ffs_blkpref_ufs2()
1614 if (fs->fs_cs(fs, cg).cs_nbfree >= avgbfree) { in ffs_blkpref_ufs2()
1615 fs->fs_cgrotor = cg; in ffs_blkpref_ufs2()
1616 return (cgdata(fs, cg)); in ffs_blkpref_ufs2()
1640 uint64_t cg, in ffs_hashalloc() argument
1648 uint64_t i, icg = cg; in ffs_hashalloc()
1659 result = (*allocator)(ip, cg, pref, size, rsize); in ffs_hashalloc()
1666 cg += i; in ffs_hashalloc()
1667 if (cg >= fs->fs_ncg) in ffs_hashalloc()
1668 cg -= fs->fs_ncg; in ffs_hashalloc()
1669 result = (*allocator)(ip, cg, 0, size, rsize); in ffs_hashalloc()
1678 cg = (icg + 2) % fs->fs_ncg; in ffs_hashalloc()
1680 result = (*allocator)(ip, cg, 0, size, rsize); in ffs_hashalloc()
1683 cg++; in ffs_hashalloc()
1684 if (cg == fs->fs_ncg) in ffs_hashalloc()
1685 cg = 0; in ffs_hashalloc()
1698 uint64_t cg, in ffs_fragextend() argument
1704 struct cg *cgp; in ffs_fragextend()
1715 if (fs->fs_cs(fs, cg).cs_nffree < numfrags(fs, nsize - osize)) in ffs_fragextend()
1724 if ((error = ffs_getcg(fs, ump->um_devvp, cg, 0, &bp, &cgp)) != 0) { in ffs_fragextend()
1725 ffs_checkcgintegrity(fs, cg, error); in ffs_fragextend()
1752 fs->fs_cs(fs, cg).cs_nffree -= nffree; in ffs_fragextend()
1754 ACTIVECLEAR(fs, cg); in ffs_fragextend()
1777 uint64_t cg, in ffs_alloccg() argument
1783 struct cg *cgp; in ffs_alloccg()
1793 if (fs->fs_cs(fs, cg).cs_nbfree == 0 && size == fs->fs_bsize) in ffs_alloccg()
1796 if ((error = ffs_getcg(fs, ump->um_devvp, cg, 0, &bp, &cgp)) != 0 || in ffs_alloccg()
1798 ffs_checkcgintegrity(fs, cg, error); in ffs_alloccg()
1804 ACTIVECLEAR(fs, cg); in ffs_alloccg()
1828 ACTIVECLEAR(fs, cg); in ffs_alloccg()
1846 fs->fs_cs(fs, cg).cs_nffree -= frags; in ffs_alloccg()
1848 blkno = cgbase(fs, cg) + bno; in ffs_alloccg()
1849 ACTIVECLEAR(fs, cg); in ffs_alloccg()
1880 struct cg *cgp; in ffs_alloccgblk()
1890 cgp = (struct cg *)bp->b_data; in ffs_alloccgblk()
1957 uint64_t cg, in ffs_clusteralloc() argument
1962 struct cg *cgp; in ffs_clusteralloc()
1973 if (fs->fs_maxcluster[cg] < len) in ffs_clusteralloc()
1976 if ((error = ffs_getcg(fs, ump->um_devvp, cg, 0, &bp, &cgp)) != 0) { in ffs_clusteralloc()
1977 ffs_checkcgintegrity(fs, cg, error); in ffs_clusteralloc()
2002 fs->fs_maxcluster[cg] = i; in ffs_clusteralloc()
2017 if (dtog(fs, bpref) != cg) in ffs_clusteralloc()
2018 bpref = cgdata(fs, cg); in ffs_clusteralloc()
2052 bno = cgbase(fs, cg) + blkstofrags(fs, got - run + 1); in ffs_clusteralloc()
2053 if (dtog(fs, bno) != cg) in ffs_clusteralloc()
2060 ACTIVECLEAR(fs, cg); in ffs_clusteralloc()
2068 uint64_t cg, in getinobuf() argument
2076 cg * fs->fs_ipg + cginoblk)), (int)fs->fs_bsize, 0, 0, in getinobuf()
2101 uint64_t cg, in ffs_nodealloccg() argument
2107 struct cg *cgp; in ffs_nodealloccg()
2118 if (fs->fs_cs(fs, cg).cs_nifree == 0) in ffs_nodealloccg()
2121 if ((error = ffs_getcg(fs, ump->um_devvp, cg, 0, &bp, &cgp)) != 0) { in ffs_nodealloccg()
2122 ffs_checkcgintegrity(fs, cg, error); in ffs_nodealloccg()
2147 (intmax_t)cg, (long)cgp->cg_irotor, fs->fs_fsmnt); in ffs_nodealloccg()
2176 ibp = getinobuf(ip, cg, old_initediblk, GB_LOCK_NOWAIT); in ffs_nodealloccg()
2186 ibp = getinobuf(ip, cg, old_initediblk, 0); in ffs_nodealloccg()
2219 error = ffs_getcg(fs, ump->um_devvp, cg, 0, &bp, &cgp); in ffs_nodealloccg()
2221 ACTIVECLEAR(fs, cg); in ffs_nodealloccg()
2231 ACTIVECLEAR(fs, cg); in ffs_nodealloccg()
2235 fs->fs_cs(fs, cg).cs_nifree--; in ffs_nodealloccg()
2240 fs->fs_cs(fs, cg).cs_ndir++; in ffs_nodealloccg()
2244 softdep_setup_inomapdep(bp, ip, cg * fs->fs_ipg + ipref, mode); in ffs_nodealloccg()
2246 return ((ino_t)(cg * fs->fs_ipg + ipref)); in ffs_nodealloccg()
2266 struct cg *cgp; in ffs_blkfree_cg()
2271 uint64_t cg; in ffs_blkfree_cg() local
2275 cg = dtog(fs, bno); in ffs_blkfree_cg()
2304 if ((error = ffs_getcg(fs, devvp, cg, GB_CVTENXIO, &bp, &cgp)) != 0) { in ffs_blkfree_cg()
2314 dbn = fragstoblks(fs, cgtod(fs, cg)); in ffs_blkfree_cg()
2316 dbn = fsbtodb(fs, cgtod(fs, cg)); in ffs_blkfree_cg()
2346 fs->fs_cs(fs, cg).cs_nbfree++; in ffs_blkfree_cg()
2369 fs->fs_cs(fs, cg).cs_nffree += i; in ffs_blkfree_cg()
2382 fs->fs_cs(fs, cg).cs_nffree -= fs->fs_frag; in ffs_blkfree_cg()
2386 fs->fs_cs(fs, cg).cs_nbfree++; in ffs_blkfree_cg()
2390 ACTIVECLEAR(fs, cg); in ffs_blkfree_cg()
2767 struct cg *cgp; in ffs_checkfreeblk()
2830 struct cg *cgp; in ffs_freefile()
2834 uint64_t cg; in ffs_freefile() local
2839 cg = ino_to_cg(fs, ino); in ffs_freefile()
2854 if ((error = ffs_getcg(fs, devvp, cg, GB_CVTENXIO, &bp, &cgp)) != 0) { in ffs_freefile()
2864 dbn = fragstoblks(fs, cgtod(fs, cg)); in ffs_freefile()
2866 dbn = fsbtodb(fs, cgtod(fs, cg)); in ffs_freefile()
2889 fs->fs_cs(fs, cg).cs_nifree++; in ffs_freefile()
2893 fs->fs_cs(fs, cg).cs_ndir--; in ffs_freefile()
2896 ACTIVECLEAR(fs, cg); in ffs_freefile()
2914 struct cg *cgp; in ffs_checkfreefile()
2917 uint64_t cg; in ffs_checkfreefile() local
2920 cg = ino_to_cg(fs, ino); in ffs_checkfreefile()
2925 if ((error = ffs_getcg(fs, devvp, cg, 0, &bp, &cgp)) != 0) in ffs_checkfreefile()
2942 struct cg *cgp, in ffs_mapsearch()
3006 uint64_t cg, in ffs_getcg() argument
3009 struct cg **cgpp) in ffs_getcg()
3012 struct cg *cgp; in ffs_getcg()
3023 blkno = fsbtodb(fs, cgtod(fs, cg)); in ffs_getcg()
3026 blkno = fragstoblks(fs, cgtod(fs, cg)); in ffs_getcg()
3033 cgp = (struct cg *)bp->b_data; in ffs_getcg()
3043 sfs->f_mntfromname, sfs->f_mntonname, (intmax_t)cg, in ffs_getcg()
3051 if (!cg_chkmagic(cgp) || cgp->cg_cgx != cg) { in ffs_getcg()
3060 "be 0x%x\n", (intmax_t)cg, cgp->cg_magic, in ffs_getcg()
3064 "cgx %u\n", (intmax_t)cg, cgp->cg_cgx); in ffs_getcg()
3094 struct cg *cgp; in ffs_ckhash_cg()
3096 cgp = (struct cg *)bp->b_data; in ffs_ckhash_cg()
3118 uint64_t cg, in ffs_checkcgintegrity() argument
3124 fs->fs_cstotal.cs_nffree -= fs->fs_cs(fs, cg).cs_nffree; in ffs_checkcgintegrity()
3125 fs->fs_cs(fs, cg).cs_nffree = 0; in ffs_checkcgintegrity()
3126 fs->fs_cstotal.cs_nbfree -= fs->fs_cs(fs, cg).cs_nbfree; in ffs_checkcgintegrity()
3127 fs->fs_cs(fs, cg).cs_nbfree = 0; in ffs_checkcgintegrity()
3128 fs->fs_cstotal.cs_nifree -= fs->fs_cs(fs, cg).cs_nifree; in ffs_checkcgintegrity()
3129 fs->fs_cs(fs, cg).cs_nifree = 0; in ffs_checkcgintegrity()
3130 fs->fs_maxcluster[cg] = 0; in ffs_checkcgintegrity()