Lines Matching refs:pag

118 	if (!xfs_verify_agino(cur->bc_ag.pag, irec->ir_startino))  in xfs_inobt_get_rec()
140 cur->bc_ag.pag->pag_agno); in xfs_inobt_get_rec()
172 struct xfs_perag *pag, in xfs_inobt_insert() argument
184 cur = xfs_inobt_init_cursor(pag, tp, agbp, btnum); in xfs_inobt_insert()
244 ASSERT(freecount == cur->bc_ag.pag->pagi_freecount); in xfs_check_agi_freecount()
516 struct xfs_perag *pag, in xfs_inobt_insert_sprec() argument
523 struct xfs_mount *mp = pag->pag_mount; in xfs_inobt_insert_sprec()
529 cur = xfs_inobt_init_cursor(pag, tp, agbp, btnum); in xfs_inobt_insert_sprec()
576 trace_xfs_irec_merge_pre(mp, pag->pag_agno, rec.ir_startino, in xfs_inobt_insert_sprec()
583 trace_xfs_irec_merge_post(mp, pag->pag_agno, nrec->ir_startino, in xfs_inobt_insert_sprec()
611 struct xfs_perag *pag, in xfs_ialloc_ag_alloc() argument
633 args.pag = pag; in xfs_ialloc_ag_alloc()
686 XFS_AGB_TO_FSB(args.mp, pag->pag_agno, in xfs_ialloc_ag_alloc()
729 XFS_AGB_TO_FSB(args.mp, pag->pag_agno, in xfs_ialloc_ag_alloc()
742 XFS_AGB_TO_FSB(args.mp, pag->pag_agno, in xfs_ialloc_ag_alloc()
778 XFS_AGB_TO_FSB(args.mp, pag->pag_agno, in xfs_ialloc_ag_alloc()
802 error = xfs_ialloc_inode_init(args.mp, tp, NULL, newlen, pag->pag_agno, in xfs_ialloc_ag_alloc()
829 error = xfs_inobt_insert_sprec(pag, tp, agbp, in xfs_ialloc_ag_alloc()
834 XFS_AGINO_TO_INO(args.mp, pag->pag_agno, in xfs_ialloc_ag_alloc()
854 error = xfs_inobt_insert_sprec(pag, tp, agbp, in xfs_ialloc_ag_alloc()
861 error = xfs_inobt_insert(pag, tp, agbp, newino, newlen, in xfs_ialloc_ag_alloc()
867 error = xfs_inobt_insert(pag, tp, agbp, newino, in xfs_ialloc_ag_alloc()
879 pag->pagi_freecount += newlen; in xfs_ialloc_ag_alloc()
880 pag->pagi_count += newlen; in xfs_ialloc_ag_alloc()
979 struct xfs_perag *pag, in xfs_dialloc_ag_inobt() argument
997 ASSERT(xfs_perag_initialised_agi(pag)); in xfs_dialloc_ag_inobt()
998 ASSERT(xfs_perag_allows_inodes(pag)); in xfs_dialloc_ag_inobt()
999 ASSERT(pag->pagi_freecount > 0); in xfs_dialloc_ag_inobt()
1002 cur = xfs_inobt_init_cursor(pag, tp, agbp, XFS_BTNUM_INO); in xfs_dialloc_ag_inobt()
1017 if (pagno == pag->pag_agno) { in xfs_dialloc_ag_inobt()
1059 pag->pagl_pagino == pagino && in xfs_dialloc_ag_inobt()
1060 pag->pagl_leftrec != NULLAGINO && in xfs_dialloc_ag_inobt()
1061 pag->pagl_rightrec != NULLAGINO) { in xfs_dialloc_ag_inobt()
1062 error = xfs_ialloc_get_rec(tcur, pag->pagl_leftrec, in xfs_dialloc_ag_inobt()
1067 error = xfs_ialloc_get_rec(cur, pag->pagl_rightrec, in xfs_dialloc_ag_inobt()
1103 pag->pagl_leftrec = trec.ir_startino; in xfs_dialloc_ag_inobt()
1104 pag->pagl_rightrec = rec.ir_startino; in xfs_dialloc_ag_inobt()
1105 pag->pagl_pagino = pagino; in xfs_dialloc_ag_inobt()
1114 pag->pagl_leftrec = trec.ir_startino; in xfs_dialloc_ag_inobt()
1115 pag->pagl_rightrec = rec.ir_startino; in xfs_dialloc_ag_inobt()
1116 pag->pagl_pagino = pagino; in xfs_dialloc_ag_inobt()
1138 pag->pagl_leftrec = trec.ir_startino; in xfs_dialloc_ag_inobt()
1139 pag->pagl_rightrec = rec.ir_startino; in xfs_dialloc_ag_inobt()
1140 pag->pagl_pagino = pagino; in xfs_dialloc_ag_inobt()
1150 pag->pagl_pagino = NULLAGINO; in xfs_dialloc_ag_inobt()
1151 pag->pagl_leftrec = NULLAGINO; in xfs_dialloc_ag_inobt()
1152 pag->pagl_rightrec = NULLAGINO; in xfs_dialloc_ag_inobt()
1220 ino = XFS_AGINO_TO_INO(mp, pag->pag_agno, rec.ir_startino + offset); in xfs_dialloc_ag_inobt()
1228 pag->pagi_freecount--; in xfs_dialloc_ag_inobt()
1427 struct xfs_perag *pag, in xfs_dialloc_ag() argument
1446 return xfs_dialloc_ag_inobt(pag, tp, agbp, parent, inop); in xfs_dialloc_ag()
1455 cur = xfs_inobt_init_cursor(pag, tp, agbp, XFS_BTNUM_FINO); in xfs_dialloc_ag()
1466 if (pag->pag_agno == pagno) in xfs_dialloc_ag()
1478 ino = XFS_AGINO_TO_INO(mp, pag->pag_agno, rec.ir_startino + offset); in xfs_dialloc_ag()
1498 icur = xfs_inobt_init_cursor(pag, tp, agbp, XFS_BTNUM_INO); in xfs_dialloc_ag()
1514 pag->pagi_freecount--; in xfs_dialloc_ag()
1577 struct xfs_perag *pag, in xfs_dialloc_good_ag() argument
1589 if (!pag) in xfs_dialloc_good_ag()
1591 if (!xfs_perag_allows_inodes(pag)) in xfs_dialloc_good_ag()
1594 if (!xfs_perag_initialised_agi(pag)) { in xfs_dialloc_good_ag()
1595 error = xfs_ialloc_read_agi(pag, tp, NULL); in xfs_dialloc_good_ag()
1600 if (pag->pagi_freecount) in xfs_dialloc_good_ag()
1605 if (!xfs_perag_initialised_agf(pag)) { in xfs_dialloc_good_ag()
1606 error = xfs_alloc_read_agf(pag, tp, flags, NULL); in xfs_dialloc_good_ag()
1638 longest = pag->pagf_longest; in xfs_dialloc_good_ag()
1640 longest = pag->pagf_flcount > 0; in xfs_dialloc_good_ag()
1643 if (pag->pagf_freeblks < needspace + ineed || longest < ineed) in xfs_dialloc_good_ag()
1650 struct xfs_perag *pag, in xfs_dialloc_try_ag() argument
1664 error = xfs_ialloc_read_agi(pag, *tpp, &agbp); in xfs_dialloc_try_ag()
1668 if (!pag->pagi_freecount) { in xfs_dialloc_try_ag()
1674 error = xfs_ialloc_ag_alloc(pag, *tpp, agbp); in xfs_dialloc_try_ag()
1683 ASSERT(pag->pagi_freecount > 0); in xfs_dialloc_try_ag()
1690 error = xfs_dialloc_ag(pag, *tpp, agbp, parent, &ino); in xfs_dialloc_try_ag()
1719 struct xfs_perag *pag; in xfs_dialloc() local
1775 for_each_perag_wrap_at(mp, start_agno, mp->m_maxagi, agno, pag) { in xfs_dialloc()
1776 if (xfs_dialloc_good_ag(pag, *tpp, mode, flags, ok_alloc)) { in xfs_dialloc()
1777 error = xfs_dialloc_try_ag(pag, tpp, parent, in xfs_dialloc()
1789 if (pag) in xfs_dialloc()
1790 xfs_perag_rele(pag); in xfs_dialloc()
1886 struct xfs_perag *pag, in xfs_difree_inobt() argument
1893 struct xfs_mount *mp = pag->pag_mount; in xfs_difree_inobt()
1908 cur = xfs_inobt_init_cursor(pag, tp, agbp, XFS_BTNUM_INO); in xfs_difree_inobt()
1955 struct xfs_perag *pag = agbp->b_pag; in xfs_difree_inobt() local
1958 xic->first_ino = XFS_AGINO_TO_INO(mp, pag->pag_agno, in xfs_difree_inobt()
1971 pag->pagi_freecount -= ilen - 1; in xfs_difree_inobt()
1972 pag->pagi_count -= ilen; in xfs_difree_inobt()
1982 xfs_difree_inode_chunk(tp, pag->pag_agno, &rec); in xfs_difree_inobt()
1998 pag->pagi_freecount++; in xfs_difree_inobt()
2020 struct xfs_perag *pag, in xfs_difree_finobt() argument
2026 struct xfs_mount *mp = pag->pag_mount; in xfs_difree_finobt()
2033 cur = xfs_inobt_init_cursor(pag, tp, agbp, XFS_BTNUM_FINO); in xfs_difree_finobt()
2131 struct xfs_perag *pag, in xfs_difree() argument
2146 if (pag->pag_agno != XFS_INO_TO_AGNO(mp, inode)) { in xfs_difree()
2148 __func__, XFS_INO_TO_AGNO(mp, inode), pag->pag_agno); in xfs_difree()
2153 if (inode != XFS_AGINO_TO_INO(mp, pag->pag_agno, agino)) { in xfs_difree()
2156 (unsigned long long)XFS_AGINO_TO_INO(mp, pag->pag_agno, agino)); in xfs_difree()
2170 error = xfs_ialloc_read_agi(pag, tp, &agbp); in xfs_difree()
2180 error = xfs_difree_inobt(pag, tp, agbp, agino, xic, &rec); in xfs_difree()
2188 error = xfs_difree_finobt(pag, tp, agbp, agino, &rec); in xfs_difree()
2201 struct xfs_perag *pag, in xfs_imap_lookup() argument
2209 struct xfs_mount *mp = pag->pag_mount; in xfs_imap_lookup()
2216 error = xfs_ialloc_read_agi(pag, tp, &agbp); in xfs_imap_lookup()
2220 __func__, error, pag->pag_agno); in xfs_imap_lookup()
2230 cur = xfs_inobt_init_cursor(pag, tp, agbp, XFS_BTNUM_INO); in xfs_imap_lookup()
2264 struct xfs_perag *pag, in xfs_imap() argument
2270 struct xfs_mount *mp = pag->pag_mount; in xfs_imap()
2287 ino != XFS_AGINO_TO_INO(mp, pag->pag_agno, agino)) { in xfs_imap()
2302 if (ino != XFS_AGINO_TO_INO(mp, pag->pag_agno, agino)) { in xfs_imap()
2306 XFS_AGINO_TO_INO(mp, pag->pag_agno, agino)); in xfs_imap()
2321 error = xfs_imap_lookup(pag, tp, agino, agbno, in xfs_imap()
2336 imap->im_blkno = XFS_AGB_TO_DADDR(mp, pag->pag_agno, agbno); in xfs_imap()
2352 error = xfs_imap_lookup(pag, tp, agino, agbno, in xfs_imap()
2366 imap->im_blkno = XFS_AGB_TO_DADDR(mp, pag->pag_agno, cluster_agbno); in xfs_imap()
2559 struct xfs_perag *pag, in xfs_read_agi() argument
2563 struct xfs_mount *mp = pag->pag_mount; in xfs_read_agi()
2566 trace_xfs_read_agi(pag->pag_mount, pag->pag_agno); in xfs_read_agi()
2569 XFS_AG_DADDR(mp, pag->pag_agno, XFS_AGI_DADDR(mp)), in xfs_read_agi()
2586 struct xfs_perag *pag, in xfs_ialloc_read_agi() argument
2594 trace_xfs_ialloc_read_agi(pag->pag_mount, pag->pag_agno); in xfs_ialloc_read_agi()
2596 error = xfs_read_agi(pag, tp, &agibp); in xfs_ialloc_read_agi()
2601 if (!xfs_perag_initialised_agi(pag)) { in xfs_ialloc_read_agi()
2602 pag->pagi_freecount = be32_to_cpu(agi->agi_freecount); in xfs_ialloc_read_agi()
2603 pag->pagi_count = be32_to_cpu(agi->agi_count); in xfs_ialloc_read_agi()
2604 set_bit(XFS_AGSTATE_AGI_INIT, &pag->pag_opstate); in xfs_ialloc_read_agi()
2611 ASSERT(pag->pagi_freecount == be32_to_cpu(agi->agi_freecount) || in xfs_ialloc_read_agi()
2612 xfs_is_shutdown(pag->pag_mount)); in xfs_ialloc_read_agi()
2912 struct xfs_perag *pag, in xfs_ialloc_check_shrink() argument
2923 if (!xfs_has_sparseinodes(pag->pag_mount)) in xfs_ialloc_check_shrink()
2926 cur = xfs_inobt_init_cursor(pag, tp, agibp, XFS_BTNUM_INO); in xfs_ialloc_check_shrink()
2929 agino = XFS_AGB_TO_AGINO(pag->pag_mount, new_length); in xfs_ialloc_check_shrink()