Lines Matching refs:nblocks
65 int nblocks);
72 static int dbAllocAny(struct bmap * bmp, s64 nblocks, int l2nb, s64 * results);
74 int nblocks);
76 int nblocks,
79 int nblocks);
80 static int dbAllocDmapLev(struct bmap * bmp, struct dmap * dp, int nblocks,
83 static int dbAllocAG(struct bmap * bmp, int agno, s64 nblocks, int l2nb,
85 static int dbAllocCtl(struct bmap * bmp, s64 nblocks, int l2nb, s64 blkno,
87 static int dbExtend(struct inode *ip, s64 blkno, s64 nblocks, s64 addnblocks);
92 int nblocks);
94 int nblocks);
102 int nblocks);
103 static int dbInitDmap(struct dmap * dp, s64 blkno, int nblocks);
107 static int dbGetL2AGSize(s64 nblocks);
325 int dbFree(struct inode *ip, s64 blkno, s64 nblocks) in dbFree() argument
338 if (unlikely((blkno == 0) || (blkno + nblocks > bmp->db_mapsize))) { in dbFree()
342 (unsigned long long) nblocks); in dbFree()
351 if (JFS_SBI(sb)->minblks_trim <= nblocks) in dbFree()
352 jfs_issue_discard(ipbmap, blkno, nblocks); in dbFree()
358 for (rem = nblocks; rem > 0; rem -= nb, blkno += nb) { in dbFree()
420 int free, s64 blkno, s64 nblocks, struct tblock * tblk) in dbUpdatePMap() argument
434 if (blkno + nblocks > bmp->db_mapsize) { in dbUpdatePMap()
437 (unsigned long long) nblocks); in dbUpdatePMap()
452 for (rem = nblocks; rem > 0; rem -= nblks, blkno += nblks) { in dbUpdatePMap()
695 int dbAlloc(struct inode *ip, s64 hint, s64 nblocks, s64 * results) in dbAlloc() argument
708 assert(nblocks > 0); in dbAlloc()
714 l2nb = BLKSTOL2(nblocks); in dbAlloc()
732 rc = dbAllocAny(bmp, nblocks, l2nb, results); in dbAlloc()
770 if (nblocks <= BPERDMAP) { in dbAlloc()
786 if ((rc = dbAllocNext(bmp, dp, blkno, (int) nblocks)) in dbAlloc()
813 dbAllocNear(bmp, dp, blkno, (int) nblocks, l2nb, results)) in dbAlloc()
825 if ((rc = dbAllocDmapLev(bmp, dp, (int) nblocks, l2nb, results)) in dbAlloc()
842 if ((rc = dbAllocAG(bmp, agno, nblocks, l2nb, results)) != -ENOSPC) in dbAlloc()
858 if ((rc = dbAllocAG(bmp, agno, nblocks, l2nb, results)) == -ENOSPC) in dbAlloc()
859 rc = dbAllocAny(bmp, nblocks, l2nb, results); in dbAlloc()
906 s64 blkno, s64 nblocks, s64 addnblocks, s64 * results) in dbReAlloc() argument
912 if ((rc = dbExtend(ip, blkno, nblocks, addnblocks)) == 0) { in dbReAlloc()
926 (ip, blkno + nblocks - 1, addnblocks + nblocks, results)); in dbReAlloc()
953 static int dbExtend(struct inode *ip, s64 blkno, s64 nblocks, s64 addnblocks) in dbExtend() argument
968 (rel_block + nblocks + addnblocks > sbi->nbperpage)) in dbExtend()
972 lastblkno = blkno + nblocks - 1; in dbExtend()
1053 int nblocks) in dbAllocNext() argument
1078 if (dbitno + nblocks > BPERDMAP) in dbAllocNext()
1100 for (rembits = nblocks; rembits > 0; rembits -= nb, dbitno += nb) { in dbAllocNext()
1152 return (dbAllocDmap(bmp, dp, blkno, nblocks)); in dbAllocNext()
1185 struct dmap * dp, s64 blkno, int nblocks, int l2nb, s64 * results) in dbAllocNear() argument
1228 if ((rc = dbAllocDmap(bmp, dp, blkno, nblocks)) == 0) in dbAllocNear()
1293 dbAllocAG(struct bmap * bmp, int agno, s64 nblocks, int l2nb, s64 * results) in dbAllocAG() argument
1334 rc = dbAllocCtl(bmp, nblocks, l2nb, blkno, results); in dbAllocAG()
1339 (unsigned long long) nblocks); in dbAllocAG()
1447 rc = dbAllocCtl(bmp, nblocks, l2nb, blkno, results); in dbAllocAG()
1491 static int dbAllocAny(struct bmap * bmp, s64 nblocks, int l2nb, s64 * results) in dbAllocAny() argument
1507 rc = dbAllocCtl(bmp, nblocks, l2nb, blkno, results); in dbAllocAny()
1550 s64 nblocks, blkno; in dbDiscardAG() local
1557 u64 nblocks; in dbDiscardAG() member
1567 nblocks = bmp->db_agfree[agno]; in dbDiscardAG()
1568 max_ranges = nblocks; in dbDiscardAG()
1579 while (nblocks >= minlen) { in dbDiscardAG()
1580 l2nb = BLKSTOL2(nblocks); in dbDiscardAG()
1583 rc = dbAllocAG(bmp, agno, nblocks, l2nb, &blkno); in dbDiscardAG()
1586 tt->nblocks = nblocks; in dbDiscardAG()
1594 nblocks = bmp->db_agfree[agno]; in dbDiscardAG()
1598 l2nb = BLKSTOL2(nblocks) - 1; in dbDiscardAG()
1599 nblocks = 1LL << l2nb; in dbDiscardAG()
1612 tt->nblocks = 0; /* mark the current end */ in dbDiscardAG()
1613 for (tt = totrim; tt->nblocks != 0; tt++) { in dbDiscardAG()
1617 jfs_issue_discard(ip, tt->blkno, tt->nblocks); in dbDiscardAG()
1618 dbFree(ip, tt->blkno, tt->nblocks); in dbDiscardAG()
1619 trimmed += tt->nblocks; in dbDiscardAG()
1773 dbAllocCtl(struct bmap * bmp, s64 nblocks, int l2nb, s64 blkno, s64 * results) in dbAllocCtl() argument
1793 rc = dbAllocDmapLev(bmp, dp, (int) nblocks, l2nb, results); in dbAllocCtl()
1809 for (n = nblocks, b = blkno; n > 0; n -= nb, b += nb) { in dbAllocCtl()
1861 for (n = nblocks - n, b = blkno; n > 0; in dbAllocCtl()
1925 struct dmap * dp, int nblocks, int l2nb, s64 * results) in dbAllocDmapLev() argument
1953 if ((rc = dbAllocDmap(bmp, dp, blkno, nblocks)) == 0) in dbAllocDmapLev()
1988 int nblocks) in dbAllocDmap() argument
1999 dbAllocBits(bmp, dp, blkno, nblocks); in dbAllocDmap()
2010 dbFreeBits(bmp, dp, blkno, nblocks); in dbAllocDmap()
2043 int nblocks) in dbFreeDmap() argument
2054 rc = dbFreeBits(bmp, dp, blkno, nblocks); in dbFreeDmap()
2075 dbAllocBits(bmp, dp, blkno, nblocks); in dbFreeDmap()
2105 int nblocks) in dbAllocBits() argument
2122 assert(dbitno + nblocks <= BPERDMAP); in dbAllocBits()
2137 for (rembits = nblocks; rembits > 0; rembits -= nb, dbitno += nb) { in dbAllocBits()
2209 le32_add_cpu(&dp->nfree, -nblocks); in dbAllocBits()
2222 bmp->db_agfree[agno] -= nblocks; in dbAllocBits()
2223 bmp->db_nfree -= nblocks; in dbAllocBits()
2252 int nblocks) in dbFreeBits() argument
2267 assert(dbitno + nblocks <= BPERDMAP); in dbFreeBits()
2286 for (rembits = nblocks; rembits > 0; rembits -= nb, dbitno += nb) { in dbFreeBits()
2353 le32_add_cpu(&dp->nfree, nblocks); in dbFreeBits()
2361 bmp->db_nfree += nblocks; in dbFreeBits()
2362 bmp->db_agfree[agno] += nblocks; in dbFreeBits()
3139 int dbAllocBottomUp(struct inode *ip, s64 blkno, s64 nblocks) in dbAllocBottomUp() argument
3151 ASSERT(nblocks <= bmp->db_mapsize - blkno); in dbAllocBottomUp()
3157 for (rem = nblocks; rem > 0; rem -= nb, blkno += nb) { in dbAllocBottomUp()
3195 int nblocks) in dbAllocDmapBU() argument
3214 assert(dbitno + nblocks <= BPERDMAP); in dbAllocDmapBU()
3229 for (rembits = nblocks; rembits > 0; rembits -= nb, dbitno += nb) { in dbAllocDmapBU()
3262 le32_add_cpu(&dp->nfree, -nblocks); in dbAllocDmapBU()
3278 bmp->db_agfree[agno] -= nblocks; in dbAllocDmapBU()
3279 bmp->db_nfree -= nblocks; in dbAllocDmapBU()
3292 dbFreeBits(bmp, dp, blkno, nblocks); in dbAllocDmapBU()
3315 int dbExtendFS(struct inode *ipbmap, s64 blkno, s64 nblocks) in dbExtendFS() argument
3330 newsize = blkno + nblocks; in dbExtendFS()
3333 (long long) blkno, (long long) nblocks, (long long) newsize); in dbExtendFS()
3490 n = min(nblocks, (s64)BPERDMAP - n); in dbExtendFS()
3498 n = min_t(s64, nblocks, BPERDMAP); in dbExtendFS()
3514 nblocks -= n; in dbExtendFS()
3515 if (nblocks == 0) in dbExtendFS()
3527 if (nblocks) in dbExtendFS()
3551 if (nblocks) in dbExtendFS()
3678 static int dbInitDmap(struct dmap * dp, s64 Blkno, int nblocks) in dbInitDmap() argument
3686 dp->nblocks = dp->nfree = cpu_to_le32(nblocks); in dbInitDmap()
3689 if (nblocks == BPERDMAP) { in dbInitDmap()
3695 le32_add_cpu(&dp->nblocks, nblocks); in dbInitDmap()
3696 le32_add_cpu(&dp->nfree, nblocks); in dbInitDmap()
3707 for (r = nblocks; r > 0; r -= nb, blkno += nb) { in dbInitDmap()
3935 static int dbGetL2AGSize(s64 nblocks) in dbGetL2AGSize() argument
3941 if (nblocks < BPERDMAP * MAXAG) in dbGetL2AGSize()
3947 if (m & nblocks) in dbGetL2AGSize()
3952 if (sz < nblocks) in dbGetL2AGSize()
3985 s64 nblocks; in dbMapFileSizeToMapSize() local
3990 nblocks = ipbmap->i_size >> JFS_SBI(sb)->l2bsize; in dbMapFileSizeToMapSize()
3991 npages = nblocks >> JFS_SBI(sb)->l2nbperpage; in dbMapFileSizeToMapSize()
4019 nblocks = ndmaps << L2BPERDMAP; in dbMapFileSizeToMapSize()
4021 return (nblocks); in dbMapFileSizeToMapSize()