Lines Matching refs:agno

57 #define AG_LOCK(imap,agno)		mutex_lock(&imap->im_aglock[agno])  argument
58 #define AG_UNLOCK(imap,agno) mutex_unlock(&imap->im_aglock[agno]) argument
293 int iagno, ino, extno, rc, agno; in diRead() local
342 agno = BLKTOAG(agstart, JFS_SBI(ip->i_sb)); in diRead()
345 if (agno >= MAXAG || agno < 0) in diRead()
851 int iagno, ino, extno, bitno, sword, agno; in diFree() local
885 agno = BLKTOAG(JFS_IP(ip)->agstart, JFS_SBI(ip->i_sb)); in diFree()
889 AG_LOCK(imap, agno); in diFree()
900 AG_UNLOCK(imap, agno); in diFree()
920 AG_UNLOCK(imap, agno); in diFree()
929 if (imap->im_agctl[agno].numfree > imap->im_agctl[agno].numinos) { in diFree()
932 AG_UNLOCK(imap, agno); in diFree()
941 imap->im_agctl[agno].numfree < 96 || in diFree()
942 (imap->im_agctl[agno].numfree < 288 && in diFree()
943 (((imap->im_agctl[agno].numfree * 100) / in diFree()
944 imap->im_agctl[agno].numinos) <= 25))) { in diFree()
955 if ((fwd = imap->im_agctl[agno].inofree) >= 0) { in diFree()
961 AG_UNLOCK(imap, agno); in diFree()
978 cpu_to_le32(imap->im_agctl[agno].inofree); in diFree()
980 imap->im_agctl[agno].inofree = iagno; in diFree()
1004 imap->im_agctl[agno].numfree += 1; in diFree()
1009 AG_UNLOCK(imap, agno); in diFree()
1039 if ((fwd = imap->im_agctl[agno].extfree) >= 0) { in diFree()
1134 cpu_to_le32(imap->im_agctl[agno].extfree); in diFree()
1136 imap->im_agctl[agno].extfree = iagno; in diFree()
1148 imap->im_agctl[agno].extfree = in diFree()
1170 imap->im_agctl[agno].inofree = in diFree()
1208 imap->im_agctl[agno].numfree -= (INOSPEREXT - 1); in diFree()
1209 imap->im_agctl[agno].numinos -= INOSPEREXT; in diFree()
1268 AG_UNLOCK(imap, agno); in diFree()
1284 AG_UNLOCK(imap, agno); in diFree()
1326 int nwords, rem, i, agno, dn_numag; in diAlloc() local
1346 agno = dbNextAG(JFS_SBI(pip->i_sb)->ipbmap); in diAlloc()
1347 AG_LOCK(imap, agno); in diAlloc()
1361 agno = BLKTOAG(JFS_IP(pip)->agstart, JFS_SBI(pip->i_sb)); in diAlloc()
1363 if (agno < 0 || agno > dn_numag || agno >= MAXAG) in diAlloc()
1366 if (atomic_read(&JFS_SBI(pip->i_sb)->bmap->db_active[agno])) { in diAlloc()
1372 agno = dbNextAG(JFS_SBI(pip->i_sb)->ipbmap); in diAlloc()
1373 AG_LOCK(imap, agno); in diAlloc()
1385 AG_LOCK(imap, agno); in diAlloc()
1394 AG_UNLOCK(imap, agno); in diAlloc()
1403 addext = (imap->im_agctl[agno].numfree < 32 && iagp->nfreeexts); in diAlloc()
1446 AG_UNLOCK(imap, agno); in diAlloc()
1502 AG_UNLOCK(imap, agno); in diAlloc()
1529 AG_UNLOCK(imap, agno); in diAlloc()
1569 AG_UNLOCK(imap, agno); in diAlloc()
1590 rc = diAllocAG(imap, agno, dir, ip); in diAlloc()
1592 AG_UNLOCK(imap, agno); in diAlloc()
1600 return (diAllocAny(imap, agno, dir, ip)); in diAlloc()
1634 diAllocAG(struct inomap * imap, int agno, bool dir, struct inode *ip) in diAllocAG() argument
1641 numfree = imap->im_agctl[agno].numfree; in diAllocAG()
1642 numinos = imap->im_agctl[agno].numinos; in diAllocAG()
1669 if ((rc = diAllocExt(imap, agno, ip)) != -ENOSPC) in diAllocAG()
1676 return (diAllocIno(imap, agno, ip)); in diAllocAG()
1704 diAllocAny(struct inomap * imap, int agno, bool dir, struct inode *ip) in diAllocAny() argument
1713 for (ag = agno + 1; ag <= maxag; ag++) { in diAllocAny()
1726 for (ag = 0; ag < agno; ag++) { in diAllocAny()
1768 static int diAllocIno(struct inomap * imap, int agno, struct inode *ip) in diAllocIno() argument
1776 if ((iagno = imap->im_agctl[agno].inofree) < 0) in diAllocIno()
1892 static int diAllocExt(struct inomap * imap, int agno, struct inode *ip) in diAllocExt() argument
1901 if ((iagno = imap->im_agctl[agno].extfree) < 0) { in diAllocExt()
1905 if ((rc = diNewIAG(imap, &iagno, agno, &mp))) { in diAllocExt()
1913 cpu_to_le64(AGTOBLK(agno, imap->im_ipimap)); in diAllocExt()
2011 int extno, bitno, agno, sword, rc; in diAllocBit() local
2046 agno = BLKTOAG(le64_to_cpu(iagp->agstart), JFS_SBI(imap->im_ipimap->i_sb)); in diAllocBit()
2095 imap->im_agctl[agno].inofree = in diAllocBit()
2105 imap->im_agctl[agno].numfree -= 1; in diAllocBit()
2157 int agno, iagno, fwd, back, freei = 0, sword, rc; in diNewExt() local
2184 agno = BLKTOAG(le64_to_cpu(iagp->agstart), sbi); in diNewExt()
2185 if (agno >= MAXAG || agno < 0) in diNewExt()
2216 if ((fwd = imap->im_agctl[agno].extfree) >= 0) { in diNewExt()
2232 freei = imap->im_agctl[agno].inofree; in diNewExt()
2256 hint = ((s64) agno << sbi->bmap->db_agl2size) - 1; in diNewExt()
2307 imap->im_agctl[agno].extfree = in diNewExt()
2321 imap->im_agctl[agno].extfree = iagno; in diNewExt()
2333 cpu_to_le32(imap->im_agctl[agno].inofree); in diNewExt()
2335 imap->im_agctl[agno].inofree = iagno; in diNewExt()
2366 imap->im_agctl[agno].numfree += (INOSPEREXT - 1); in diNewExt()
2367 imap->im_agctl[agno].numinos += INOSPEREXT; in diNewExt()
2440 diNewIAG(struct inomap * imap, int *iagnop, int agno, struct metapage ** mpp) in diNewIAG() argument