• Home
  • Raw
  • Download

Lines Matching refs:mp

52 	if (xfs_sb_version_hasalign(&args->mp->m_sb) &&  in xfs_ialloc_cluster_alignment()
53 args->mp->m_sb.sb_inoalignmt >= in xfs_ialloc_cluster_alignment()
54 XFS_B_TO_FSBT(args->mp, XFS_INODE_CLUSTER_SIZE(args->mp))) in xfs_ialloc_cluster_alignment()
55 return args->mp->m_sb.sb_inoalignmt; in xfs_ialloc_cluster_alignment()
187 args.mp = tp->t_mountp; in xfs_ialloc_ag_alloc()
193 newlen = XFS_IALLOC_INODES(args.mp); in xfs_ialloc_ag_alloc()
194 if (args.mp->m_maxicount && in xfs_ialloc_ag_alloc()
195 args.mp->m_sb.sb_icount + newlen > args.mp->m_maxicount) in xfs_ialloc_ag_alloc()
197 args.minlen = args.maxlen = XFS_IALLOC_BLOCKS(args.mp); in xfs_ialloc_ag_alloc()
205 args.agbno = XFS_AGINO_TO_AGBNO(args.mp, newino) + in xfs_ialloc_ag_alloc()
206 XFS_IALLOC_BLOCKS(args.mp); in xfs_ialloc_ag_alloc()
209 args.fsbno = XFS_AGB_TO_FSB(args.mp, in xfs_ialloc_ag_alloc()
233 args.minleft = XFS_IN_MAXLEVELS(args.mp) - 1; in xfs_ialloc_ag_alloc()
249 if (args.mp->m_sinoalign) { in xfs_ialloc_ag_alloc()
250 ASSERT(!(args.mp->m_flags & XFS_MOUNT_NOALIGN)); in xfs_ialloc_ag_alloc()
251 args.alignment = args.mp->m_dalign; in xfs_ialloc_ag_alloc()
261 args.fsbno = XFS_AGB_TO_FSB(args.mp, in xfs_ialloc_ag_alloc()
273 args.minleft = XFS_IN_MAXLEVELS(args.mp) - 1; in xfs_ialloc_ag_alloc()
285 args.fsbno = XFS_AGB_TO_FSB(args.mp, in xfs_ialloc_ag_alloc()
300 newino = XFS_OFFBNO_TO_AGINO(args.mp, args.agbno, 0); in xfs_ialloc_ag_alloc()
306 if (args.mp->m_sb.sb_blocksize >= XFS_INODE_CLUSTER_SIZE(args.mp)) { in xfs_ialloc_ag_alloc()
309 ninodes = args.mp->m_sb.sb_inopblock; in xfs_ialloc_ag_alloc()
311 blks_per_cluster = XFS_INODE_CLUSTER_SIZE(args.mp) / in xfs_ialloc_ag_alloc()
312 args.mp->m_sb.sb_blocksize; in xfs_ialloc_ag_alloc()
314 ninodes = blks_per_cluster * args.mp->m_sb.sb_inopblock; in xfs_ialloc_ag_alloc()
323 if (xfs_sb_version_hasnlink(&args.mp->m_sb)) in xfs_ialloc_ag_alloc()
340 d = XFS_AGB_TO_DADDR(args.mp, be32_to_cpu(agi->agi_seqno), in xfs_ialloc_ag_alloc()
342 fbuf = xfs_trans_get_buf(tp, args.mp->m_ddev_targp, d, in xfs_ialloc_ag_alloc()
343 args.mp->m_bsize * blks_per_cluster, in xfs_ialloc_ag_alloc()
355 xfs_biozero(fbuf, 0, ninodes << args.mp->m_sb.sb_inodelog); in xfs_ialloc_ag_alloc()
357 int ioffset = i << args.mp->m_sb.sb_inodelog; in xfs_ialloc_ag_alloc()
360 free = xfs_make_iptr(args.mp, fbuf, i); in xfs_ialloc_ag_alloc()
372 down_read(&args.mp->m_peraglock); in xfs_ialloc_ag_alloc()
373 args.mp->m_perag[agno].pagi_freecount += newlen; in xfs_ialloc_ag_alloc()
374 up_read(&args.mp->m_peraglock); in xfs_ialloc_ag_alloc()
379 cur = xfs_inobt_init_cursor(args.mp, tp, agbp, agno); in xfs_ialloc_ag_alloc()
412 xfs_mount_t *mp) in xfs_ialloc_next_ag() argument
416 spin_lock(&mp->m_agirotor_lock); in xfs_ialloc_next_ag()
417 agno = mp->m_agirotor; in xfs_ialloc_next_ag()
418 if (++mp->m_agirotor == mp->m_maxagi) in xfs_ialloc_next_ag()
419 mp->m_agirotor = 0; in xfs_ialloc_next_ag()
420 spin_unlock(&mp->m_agirotor_lock); in xfs_ialloc_next_ag()
442 xfs_mount_t *mp; /* mount point structure */ in xfs_ialloc_ag_select() local
452 mp = tp->t_mountp; in xfs_ialloc_ag_select()
453 agcount = mp->m_maxagi; in xfs_ialloc_ag_select()
455 pagno = xfs_ialloc_next_ag(mp); in xfs_ialloc_ag_select()
457 pagno = XFS_INO_TO_AGNO(mp, parent); in xfs_ialloc_ag_select()
471 down_read(&mp->m_peraglock); in xfs_ialloc_ag_select()
473 pag = &mp->m_perag[agno]; in xfs_ialloc_ag_select()
475 if (xfs_ialloc_read_agi(mp, tp, agno, &agbp)) { in xfs_ialloc_ag_select()
483 xfs_ialloc_next_ag(mp); in xfs_ialloc_ag_select()
491 ineed = pag->pagi_freecount ? 0 : XFS_IALLOC_BLOCKS(mp); in xfs_ialloc_ag_select()
494 xfs_ialloc_read_agi(mp, tp, agno, &agbp)) { in xfs_ialloc_ag_select()
498 (void)xfs_alloc_pagf_init(mp, tp, agno, flags); in xfs_ialloc_ag_select()
508 xfs_ialloc_read_agi(mp, tp, agno, &agbp)) { in xfs_ialloc_ag_select()
512 up_read(&mp->m_peraglock); in xfs_ialloc_ag_select()
524 if (XFS_FORCED_SHUTDOWN(mp)) { in xfs_ialloc_ag_select()
525 up_read(&mp->m_peraglock); in xfs_ialloc_ag_select()
533 up_read(&mp->m_peraglock); in xfs_ialloc_ag_select()
593 xfs_mount_t *mp; /* file system mount structure */ in xfs_dialloc() local
629 mp = tp->t_mountp; in xfs_dialloc()
630 agcount = mp->m_sb.sb_agcount; in xfs_dialloc()
633 pagno = XFS_INO_TO_AGNO(mp, parent); in xfs_dialloc()
634 pagino = XFS_INO_TO_AGINO(mp, parent); in xfs_dialloc()
642 if (mp->m_maxicount && in xfs_dialloc()
643 mp->m_sb.sb_icount + XFS_IALLOC_INODES(mp) > mp->m_maxicount) { in xfs_dialloc()
700 down_read(&mp->m_peraglock); in xfs_dialloc()
701 if (mp->m_perag[tagno].pagi_inodeok == 0) { in xfs_dialloc()
702 up_read(&mp->m_peraglock); in xfs_dialloc()
705 error = xfs_ialloc_read_agi(mp, tp, tagno, &agbp); in xfs_dialloc()
706 up_read(&mp->m_peraglock); in xfs_dialloc()
719 cur = xfs_inobt_init_cursor(mp, tp, agbp, be32_to_cpu(agi->agi_seqno)); in xfs_dialloc()
744 XFS_FORCED_SHUTDOWN(mp)); in xfs_dialloc()
943 ASSERT((XFS_AGINO_TO_OFFSET(mp, rec.ir_startino) % in xfs_dialloc()
945 ino = XFS_AGINO_TO_INO(mp, agno, rec.ir_startino + offset); in xfs_dialloc()
953 down_read(&mp->m_peraglock); in xfs_dialloc()
954 mp->m_perag[tagno].pagi_freecount--; in xfs_dialloc()
955 up_read(&mp->m_peraglock); in xfs_dialloc()
972 XFS_FORCED_SHUTDOWN(mp)); in xfs_dialloc()
1010 xfs_mount_t *mp; /* mount structure for filesystem */ in xfs_difree() local
1014 mp = tp->t_mountp; in xfs_difree()
1019 agno = XFS_INO_TO_AGNO(mp, inode); in xfs_difree()
1020 if (agno >= mp->m_sb.sb_agcount) { in xfs_difree()
1023 agno, mp->m_sb.sb_agcount, mp->m_fsname); in xfs_difree()
1027 agino = XFS_INO_TO_AGINO(mp, inode); in xfs_difree()
1028 if (inode != XFS_AGINO_TO_INO(mp, agno, agino)) { in xfs_difree()
1033 (unsigned long long)XFS_AGINO_TO_INO(mp, agno, agino), in xfs_difree()
1034 mp->m_fsname); in xfs_difree()
1038 agbno = XFS_AGINO_TO_AGBNO(mp, agino); in xfs_difree()
1039 if (agbno >= mp->m_sb.sb_agblocks) { in xfs_difree()
1042 agbno, mp->m_sb.sb_agblocks, mp->m_fsname); in xfs_difree()
1049 down_read(&mp->m_peraglock); in xfs_difree()
1050 error = xfs_ialloc_read_agi(mp, tp, agno, &agbp); in xfs_difree()
1051 up_read(&mp->m_peraglock); in xfs_difree()
1055 error, mp->m_fsname); in xfs_difree()
1064 cur = xfs_inobt_init_cursor(mp, tp, agbp, agno); in xfs_difree()
1082 XFS_FORCED_SHUTDOWN(mp)); in xfs_difree()
1091 error, mp->m_fsname); in xfs_difree()
1099 error, mp->m_fsname); in xfs_difree()
1118 if (!(mp->m_flags & XFS_MOUNT_IKEEP) && in xfs_difree()
1119 (rec.ir_freecount == XFS_IALLOC_INODES(mp))) { in xfs_difree()
1122 *first_ino = XFS_AGINO_TO_INO(mp, agno, rec.ir_startino); in xfs_difree()
1129 ilen = XFS_IALLOC_INODES(mp); in xfs_difree()
1133 down_read(&mp->m_peraglock); in xfs_difree()
1134 mp->m_perag[agno].pagi_freecount -= ilen - 1; in xfs_difree()
1135 up_read(&mp->m_peraglock); in xfs_difree()
1141 error, mp->m_fsname); in xfs_difree()
1145 xfs_bmap_add_free(XFS_AGB_TO_FSB(mp, in xfs_difree()
1146 agno, XFS_INO_TO_AGBNO(mp,rec.ir_startino)), in xfs_difree()
1147 XFS_IALLOC_BLOCKS(mp), flist, mp); in xfs_difree()
1154 error, mp->m_fsname); in xfs_difree()
1162 down_read(&mp->m_peraglock); in xfs_difree()
1163 mp->m_perag[agno].pagi_freecount++; in xfs_difree()
1164 up_read(&mp->m_peraglock); in xfs_difree()
1187 XFS_FORCED_SHUTDOWN(mp)); in xfs_difree()
1203 xfs_mount_t *mp, /* file system mount structure */ in xfs_imap() argument
1224 agno = XFS_INO_TO_AGNO(mp, ino); in xfs_imap()
1225 agino = XFS_INO_TO_AGINO(mp, ino); in xfs_imap()
1226 agbno = XFS_AGINO_TO_AGBNO(mp, agino); in xfs_imap()
1227 if (agno >= mp->m_sb.sb_agcount || agbno >= mp->m_sb.sb_agblocks || in xfs_imap()
1228 ino != XFS_AGINO_TO_INO(mp, agno, agino)) { in xfs_imap()
1233 if (agno >= mp->m_sb.sb_agcount) { in xfs_imap()
1234 xfs_fs_cmn_err(CE_ALERT, mp, in xfs_imap()
1237 agno, mp->m_sb.sb_agcount); in xfs_imap()
1239 if (agbno >= mp->m_sb.sb_agblocks) { in xfs_imap()
1240 xfs_fs_cmn_err(CE_ALERT, mp, in xfs_imap()
1244 (unsigned long) mp->m_sb.sb_agblocks); in xfs_imap()
1246 if (ino != XFS_AGINO_TO_INO(mp, agno, agino)) { in xfs_imap()
1247 xfs_fs_cmn_err(CE_ALERT, mp, in xfs_imap()
1251 ino, XFS_AGINO_TO_INO(mp, agno, agino)); in xfs_imap()
1262 if (XFS_INODE_CLUSTER_SIZE(mp) <= mp->m_sb.sb_blocksize) { in xfs_imap()
1263 offset = XFS_INO_TO_OFFSET(mp, ino); in xfs_imap()
1264 ASSERT(offset < mp->m_sb.sb_inopblock); in xfs_imap()
1266 imap->im_blkno = XFS_AGB_TO_DADDR(mp, agno, agbno); in xfs_imap()
1267 imap->im_len = XFS_FSB_TO_BB(mp, 1); in xfs_imap()
1268 imap->im_boffset = (ushort)(offset << mp->m_sb.sb_inodelog); in xfs_imap()
1272 blks_per_cluster = XFS_INODE_CLUSTER_SIZE(mp) >> mp->m_sb.sb_blocklog; in xfs_imap()
1279 offset = XFS_INO_TO_OFFSET(mp, ino); in xfs_imap()
1280 ASSERT(offset < mp->m_sb.sb_inopblock); in xfs_imap()
1282 cluster_agbno = xfs_daddr_to_agbno(mp, imap->im_blkno); in xfs_imap()
1283 offset += (agbno - cluster_agbno) * mp->m_sb.sb_inopblock; in xfs_imap()
1285 imap->im_len = XFS_FSB_TO_BB(mp, blks_per_cluster); in xfs_imap()
1286 imap->im_boffset = (ushort)(offset << mp->m_sb.sb_inodelog); in xfs_imap()
1295 if (mp->m_inoalign_mask) { in xfs_imap()
1296 offset_agbno = agbno & mp->m_inoalign_mask; in xfs_imap()
1306 down_read(&mp->m_peraglock); in xfs_imap()
1307 error = xfs_ialloc_read_agi(mp, tp, agno, &agbp); in xfs_imap()
1308 up_read(&mp->m_peraglock); in xfs_imap()
1310 xfs_fs_cmn_err(CE_ALERT, mp, "xfs_imap: " in xfs_imap()
1317 cur = xfs_inobt_init_cursor(mp, tp, agbp, agno); in xfs_imap()
1320 xfs_fs_cmn_err(CE_ALERT, mp, "xfs_imap: " in xfs_imap()
1328 xfs_fs_cmn_err(CE_ALERT, mp, "xfs_imap: " in xfs_imap()
1334 xfs_fs_cmn_err(CE_ALERT, mp, "xfs_imap: " in xfs_imap()
1344 chunk_agbno = XFS_AGINO_TO_AGBNO(mp, chunk_agino); in xfs_imap()
1351 offset = ((agbno - cluster_agbno) * mp->m_sb.sb_inopblock) + in xfs_imap()
1352 XFS_INO_TO_OFFSET(mp, ino); in xfs_imap()
1354 imap->im_blkno = XFS_AGB_TO_DADDR(mp, agno, cluster_agbno); in xfs_imap()
1355 imap->im_len = XFS_FSB_TO_BB(mp, blks_per_cluster); in xfs_imap()
1356 imap->im_boffset = (ushort)(offset << mp->m_sb.sb_inodelog); in xfs_imap()
1365 XFS_FSB_TO_BB(mp, mp->m_sb.sb_dblocks)) { in xfs_imap()
1366 xfs_fs_cmn_err(CE_ALERT, mp, "xfs_imap: " in xfs_imap()
1371 XFS_FSB_TO_BB(mp, mp->m_sb.sb_dblocks)); in xfs_imap()
1383 xfs_mount_t *mp) /* file system mount structure */ in xfs_ialloc_compute_maxlevels() argument
1391 maxleafents = (1LL << XFS_INO_AGINO_BITS(mp)) >> in xfs_ialloc_compute_maxlevels()
1393 minleafrecs = mp->m_alloc_mnr[0]; in xfs_ialloc_compute_maxlevels()
1394 minnoderecs = mp->m_alloc_mnr[1]; in xfs_ialloc_compute_maxlevels()
1398 mp->m_in_maxlevels = level; in xfs_ialloc_compute_maxlevels()
1462 struct xfs_mount *mp, /* file system mount structure */ in xfs_read_agi() argument
1473 error = xfs_trans_read_buf(mp, tp, mp->m_ddev_targp, in xfs_read_agi()
1474 XFS_AG_DADDR(mp, agno, XFS_AGI_DADDR(mp)), in xfs_read_agi()
1475 XFS_FSS_TO_BB(mp, 1), 0, bpp); in xfs_read_agi()
1488 if (unlikely(XFS_TEST_ERROR(!agi_ok, mp, XFS_ERRTAG_IALLOC_READ_AGI, in xfs_read_agi()
1491 mp, agi); in xfs_read_agi()
1504 struct xfs_mount *mp, /* file system mount structure */ in xfs_ialloc_read_agi() argument
1513 error = xfs_read_agi(mp, tp, agno, bpp); in xfs_ialloc_read_agi()
1518 pag = &mp->m_perag[agno]; in xfs_ialloc_read_agi()
1531 XFS_FORCED_SHUTDOWN(mp)); in xfs_ialloc_read_agi()
1540 xfs_mount_t *mp, /* file system mount structure */ in xfs_ialloc_pagi_init() argument
1547 error = xfs_ialloc_read_agi(mp, tp, agno, &bp); in xfs_ialloc_pagi_init()