Lines Matching refs:mp
28 struct xfs_mount *mp,
37 error = xfs_buf_get_uncached(mp->m_ddev_targp, numblks, 0, &bp);
50 static inline bool is_log_ag(struct xfs_mount *mp, struct aghdr_init_data *id)
52 return mp->m_sb.sb_logstart > 0 &&
53 id->agno == XFS_FSB_TO_AGNO(mp, mp->m_sb.sb_logstart);
61 struct xfs_mount *mp,
65 xfs_btree_init_block(mp, bp, id->type, 0, 0, id->agno);
71 struct xfs_mount *mp,
78 arec = XFS_ALLOC_REC_ADDR(mp, XFS_BUF_TO_BLOCK(bp), 1);
79 arec->ar_startblock = cpu_to_be32(mp->m_ag_prealloc_blocks);
81 if (is_log_ag(mp, id)) {
83 xfs_agblock_t start = XFS_FSB_TO_AGBNO(mp,
84 mp->m_sb.sb_logstart);
86 ASSERT(start >= mp->m_ag_prealloc_blocks);
87 if (start != mp->m_ag_prealloc_blocks) {
92 mp->m_ag_prealloc_blocks);
108 be32_add_cpu(&arec->ar_startblock, mp->m_sb.sb_logblocks);
128 struct xfs_mount *mp,
132 xfs_btree_init_block(mp, bp, XFS_BTNUM_BNO, 0, 1, id->agno);
133 xfs_freesp_init_recs(mp, bp, id);
138 struct xfs_mount *mp,
142 xfs_btree_init_block(mp, bp, XFS_BTNUM_CNT, 0, 1, id->agno);
143 xfs_freesp_init_recs(mp, bp, id);
151 struct xfs_mount *mp,
158 xfs_btree_init_block(mp, bp, XFS_BTNUM_RMAP, 0, 4, id->agno);
171 rrec->rm_blockcount = cpu_to_be32(XFS_BNO_BLOCK(mp));
177 rrec->rm_startblock = cpu_to_be32(XFS_BNO_BLOCK(mp));
184 rrec->rm_startblock = cpu_to_be32(XFS_IBT_BLOCK(mp));
185 rrec->rm_blockcount = cpu_to_be32(XFS_RMAP_BLOCK(mp) -
186 XFS_IBT_BLOCK(mp));
192 rrec->rm_startblock = cpu_to_be32(XFS_RMAP_BLOCK(mp));
198 if (xfs_sb_version_hasreflink(&mp->m_sb)) {
200 rrec->rm_startblock = cpu_to_be32(xfs_refc_block(mp));
208 if (is_log_ag(mp, id)) {
212 XFS_FSB_TO_AGBNO(mp, mp->m_sb.sb_logstart));
213 rrec->rm_blockcount = cpu_to_be32(mp->m_sb.sb_logblocks);
230 struct xfs_mount *mp,
236 xfs_sb_to_disk(dsb, &mp->m_sb);
242 struct xfs_mount *mp,
253 agf->agf_roots[XFS_BTNUM_BNOi] = cpu_to_be32(XFS_BNO_BLOCK(mp));
254 agf->agf_roots[XFS_BTNUM_CNTi] = cpu_to_be32(XFS_CNT_BLOCK(mp));
257 if (xfs_sb_version_hasrmapbt(&mp->m_sb)) {
259 cpu_to_be32(XFS_RMAP_BLOCK(mp));
267 tmpsize = id->agsize - mp->m_ag_prealloc_blocks;
270 if (xfs_sb_version_hascrc(&mp->m_sb))
271 uuid_copy(&agf->agf_uuid, &mp->m_sb.sb_meta_uuid);
272 if (xfs_sb_version_hasreflink(&mp->m_sb)) {
274 xfs_refc_block(mp));
279 if (is_log_ag(mp, id)) {
280 int64_t logblocks = mp->m_sb.sb_logblocks;
284 XFS_FSB_TO_AGBNO(mp, mp->m_sb.sb_logstart) - logblocks);
290 struct xfs_mount *mp,
298 if (xfs_sb_version_hascrc(&mp->m_sb)) {
301 uuid_copy(&agfl->agfl_uuid, &mp->m_sb.sb_meta_uuid);
305 for (bucket = 0; bucket < xfs_agfl_size(mp); bucket++)
311 struct xfs_mount *mp,
323 agi->agi_root = cpu_to_be32(XFS_IBT_BLOCK(mp));
328 if (xfs_sb_version_hascrc(&mp->m_sb))
329 uuid_copy(&agi->agi_uuid, &mp->m_sb.sb_meta_uuid);
330 if (xfs_sb_version_hasfinobt(&mp->m_sb)) {
331 agi->agi_free_root = cpu_to_be32(XFS_FIBT_BLOCK(mp));
336 if (xfs_sb_version_hasinobtcounts(&mp->m_sb)) {
338 if (xfs_sb_version_hasfinobt(&mp->m_sb))
343 typedef void (*aghdr_init_work_f)(struct xfs_mount *mp, struct xfs_buf *bp,
347 struct xfs_mount *mp,
355 error = xfs_get_aghdr_buf(mp, id->daddr, id->numblks, &bp, ops);
359 (*work)(mp, bp, id);
387 struct xfs_mount *mp,
393 .daddr = XFS_AG_DADDR(mp, id->agno, XFS_SB_DADDR),
394 .numblks = XFS_FSS_TO_BB(mp, 1),
400 .daddr = XFS_AG_DADDR(mp, id->agno, XFS_AGF_DADDR(mp)),
401 .numblks = XFS_FSS_TO_BB(mp, 1),
407 .daddr = XFS_AG_DADDR(mp, id->agno, XFS_AGFL_DADDR(mp)),
408 .numblks = XFS_FSS_TO_BB(mp, 1),
414 .daddr = XFS_AG_DADDR(mp, id->agno, XFS_AGI_DADDR(mp)),
415 .numblks = XFS_FSS_TO_BB(mp, 1),
421 .daddr = XFS_AGB_TO_DADDR(mp, id->agno, XFS_BNO_BLOCK(mp)),
422 .numblks = BTOBB(mp->m_sb.sb_blocksize),
428 .daddr = XFS_AGB_TO_DADDR(mp, id->agno, XFS_CNT_BLOCK(mp)),
429 .numblks = BTOBB(mp->m_sb.sb_blocksize),
435 .daddr = XFS_AGB_TO_DADDR(mp, id->agno, XFS_IBT_BLOCK(mp)),
436 .numblks = BTOBB(mp->m_sb.sb_blocksize),
443 .daddr = XFS_AGB_TO_DADDR(mp, id->agno, XFS_FIBT_BLOCK(mp)),
444 .numblks = BTOBB(mp->m_sb.sb_blocksize),
448 .need_init = xfs_sb_version_hasfinobt(&mp->m_sb)
451 .daddr = XFS_AGB_TO_DADDR(mp, id->agno, XFS_RMAP_BLOCK(mp)),
452 .numblks = BTOBB(mp->m_sb.sb_blocksize),
455 .need_init = xfs_sb_version_hasrmapbt(&mp->m_sb)
458 .daddr = XFS_AGB_TO_DADDR(mp, id->agno, xfs_refc_block(mp)),
459 .numblks = BTOBB(mp->m_sb.sb_blocksize),
463 .need_init = xfs_sb_version_hasreflink(&mp->m_sb)
473 id->nfree += id->agsize - mp->m_ag_prealloc_blocks;
481 error = xfs_ag_init_hdr(mp, id, dp->work, dp->ops);
493 struct xfs_mount *mp,
506 error = xfs_ialloc_read_agi(mp, tp, id->agno, &bp);
512 ASSERT(id->agno == mp->m_sb.sb_agcount - 1 ||
513 be32_to_cpu(agi->agi_length) == mp->m_sb.sb_agblocks);
519 error = xfs_alloc_read_agf(mp, tp, id->agno, 0, &bp);
540 return xfs_free_extent(tp, XFS_AGB_TO_FSB(mp, id->agno,
549 struct xfs_mount *mp,
561 if (agno >= mp->m_sb.sb_agcount)
565 error = xfs_ialloc_read_agi(mp, NULL, agno, &agi_bp);
568 error = xfs_alloc_read_agf(mp, NULL, agno, 0, &agf_bp);