Lines Matching refs:mp

51 	struct xfs_mount	*mp = tp->t_mountp;  in xfs_resizefs_init_new_ags()  local
52 xfs_rfsblock_t nb = mp->m_sb.sb_dblocks + delta; in xfs_resizefs_init_new_ags()
64 (xfs_rfsblock_t)mp->m_sb.sb_agblocks); in xfs_resizefs_init_new_ags()
66 id->agsize = mp->m_sb.sb_agblocks; in xfs_resizefs_init_new_ags()
68 error = xfs_ag_init_headers(mp, id); in xfs_resizefs_init_new_ags()
91 struct xfs_mount *mp, /* mount point for filesystem */ in xfs_growfs_data_private() argument
94 xfs_agnumber_t oagcount = mp->m_sb.sb_agcount; in xfs_growfs_data_private()
107 error = xfs_sb_validate_fsb_count(&mp->m_sb, nb); in xfs_growfs_data_private()
111 if (nb > mp->m_sb.sb_dblocks) { in xfs_growfs_data_private()
112 error = xfs_buf_read_uncached(mp->m_ddev_targp, in xfs_growfs_data_private()
113 XFS_FSB_TO_BB(mp, nb) - XFS_FSS_TO_BB(mp, 1), in xfs_growfs_data_private()
114 XFS_FSS_TO_BB(mp, 1), &bp, NULL); in xfs_growfs_data_private()
121 error = xfs_growfs_check_rtgeom(mp, nb, mp->m_sb.sb_rblocks, in xfs_growfs_data_private()
122 mp->m_sb.sb_rextsize); in xfs_growfs_data_private()
127 nb_mod = do_div(nb_div, mp->m_sb.sb_agblocks); in xfs_growfs_data_private()
131 nb = nb_div * mp->m_sb.sb_agblocks; in xfs_growfs_data_private()
135 nb = nb_div * mp->m_sb.sb_agblocks; in xfs_growfs_data_private()
138 delta = nb - mp->m_sb.sb_dblocks; in xfs_growfs_data_private()
156 error = xfs_initialize_perag(mp, oagcount, nagcount, nb, &nagimax); in xfs_growfs_data_private()
161 error = xfs_trans_alloc(mp, &M_RES(mp)->tr_growdata, in xfs_growfs_data_private()
162 XFS_GROWFS_SPACE_RES(mp), 0, XFS_TRANS_RESERVE, in xfs_growfs_data_private()
165 error = xfs_trans_alloc(mp, &M_RES(mp)->tr_growdata, -delta, 0, in xfs_growfs_data_private()
170 last_pag = xfs_perag_get(mp, oagcount - 1); in xfs_growfs_data_private()
175 xfs_warn_experimental(mp, XFS_EXPERIMENTAL_SHRINK); in xfs_growfs_data_private()
199 if (xfs_has_lazysbcount(mp)) in xfs_growfs_data_private()
209 mp->m_maxagi = nagimax; in xfs_growfs_data_private()
210 xfs_set_low_space_thresholds(mp); in xfs_growfs_data_private()
211 mp->m_alloc_set_aside = xfs_alloc_set_aside(mp); in xfs_growfs_data_private()
221 pag = xfs_perag_get(mp, id.agno); in xfs_growfs_data_private()
230 error = xfs_fs_reserve_ag_blocks(mp); in xfs_growfs_data_private()
235 xfs_rtrmapbt_compute_maxlevels(mp); in xfs_growfs_data_private()
236 xfs_rtrefcountbt_compute_maxlevels(mp); in xfs_growfs_data_private()
245 xfs_free_perag_range(mp, oagcount, nagcount); in xfs_growfs_data_private()
251 struct xfs_mount *mp, /* mount point for filesystem */ in xfs_growfs_log_private() argument
257 if (nb < XFS_MIN_LOG_BLOCKS || nb < XFS_B_TO_FSB(mp, XFS_MIN_LOG_BYTES)) in xfs_growfs_log_private()
259 if (nb == mp->m_sb.sb_logblocks && in xfs_growfs_log_private()
260 in->isint == (mp->m_sb.sb_logstart != 0)) in xfs_growfs_log_private()
273 struct xfs_mount *mp, in xfs_growfs_imaxpct() argument
283 error = xfs_trans_alloc(mp, &M_RES(mp)->tr_growdata, in xfs_growfs_imaxpct()
284 XFS_GROWFS_SPACE_RES(mp), 0, XFS_TRANS_RESERVE, &tp); in xfs_growfs_imaxpct()
288 dpct = imaxpct - mp->m_sb.sb_imax_pct; in xfs_growfs_imaxpct()
301 struct xfs_mount *mp, in xfs_growfs_data() argument
308 if (!mutex_trylock(&mp->m_growlock)) in xfs_growfs_data()
312 if (in->newblocks != mp->m_sb.sb_dblocks && mp->m_sb.sb_rtstart) { in xfs_growfs_data()
318 if (in->imaxpct != mp->m_sb.sb_imax_pct) { in xfs_growfs_data()
319 error = xfs_growfs_imaxpct(mp, in->imaxpct); in xfs_growfs_data()
324 if (in->newblocks != mp->m_sb.sb_dblocks) { in xfs_growfs_data()
325 error = xfs_growfs_data_private(mp, in); in xfs_growfs_data()
331 if (mp->m_sb.sb_imax_pct) { in xfs_growfs_data()
332 uint64_t icount = mp->m_sb.sb_dblocks * mp->m_sb.sb_imax_pct; in xfs_growfs_data()
334 M_IGEO(mp)->maxicount = XFS_FSB_TO_INO(mp, icount); in xfs_growfs_data()
336 M_IGEO(mp)->maxicount = 0; in xfs_growfs_data()
339 error = xfs_update_secondary_sbs(mp); in xfs_growfs_data()
345 mp->m_generation++; in xfs_growfs_data()
347 mutex_unlock(&mp->m_growlock); in xfs_growfs_data()
353 xfs_mount_t *mp, in xfs_growfs_log() argument
360 if (!mutex_trylock(&mp->m_growlock)) in xfs_growfs_log()
362 error = xfs_growfs_log_private(mp, in); in xfs_growfs_log()
363 mutex_unlock(&mp->m_growlock); in xfs_growfs_log()
374 struct xfs_mount *mp, in xfs_reserve_blocks() argument
395 spin_lock(&mp->m_sb_lock); in xfs_reserve_blocks()
403 if (mp->m_free[ctr].res_total > request) { in xfs_reserve_blocks()
404 lcounter = mp->m_free[ctr].res_avail - request; in xfs_reserve_blocks()
407 mp->m_free[ctr].res_avail -= lcounter; in xfs_reserve_blocks()
409 mp->m_free[ctr].res_total = request; in xfs_reserve_blocks()
411 spin_unlock(&mp->m_sb_lock); in xfs_reserve_blocks()
412 xfs_add_freecounter(mp, ctr, fdblks_delta); in xfs_reserve_blocks()
413 spin_lock(&mp->m_sb_lock); in xfs_reserve_blocks()
431 free = xfs_sum_freecounter_raw(mp, ctr) - in xfs_reserve_blocks()
432 xfs_freecounter_unavailable(mp, ctr); in xfs_reserve_blocks()
433 delta = request - mp->m_free[ctr].res_total; in xfs_reserve_blocks()
434 mp->m_free[ctr].res_total = request; in xfs_reserve_blocks()
447 spin_unlock(&mp->m_sb_lock); in xfs_reserve_blocks()
448 error = xfs_dec_freecounter(mp, ctr, fdblks_delta, 0); in xfs_reserve_blocks()
450 xfs_add_freecounter(mp, ctr, fdblks_delta); in xfs_reserve_blocks()
451 spin_lock(&mp->m_sb_lock); in xfs_reserve_blocks()
454 spin_unlock(&mp->m_sb_lock); in xfs_reserve_blocks()
460 xfs_mount_t *mp, in xfs_fs_goingdown() argument
465 if (!bdev_freeze(mp->m_super->s_bdev)) { in xfs_fs_goingdown()
466 xfs_force_shutdown(mp, SHUTDOWN_FORCE_UMOUNT); in xfs_fs_goingdown()
467 bdev_thaw(mp->m_super->s_bdev); in xfs_fs_goingdown()
472 xfs_force_shutdown(mp, SHUTDOWN_FORCE_UMOUNT); in xfs_fs_goingdown()
475 xfs_force_shutdown(mp, in xfs_fs_goingdown()
498 struct xfs_mount *mp, in xfs_do_force_shutdown() argument
507 if (xfs_set_shutdown(mp)) { in xfs_do_force_shutdown()
508 xlog_shutdown_wait(mp->m_log); in xfs_do_force_shutdown()
511 if (mp->m_sb_bp) in xfs_do_force_shutdown()
512 mp->m_sb_bp->b_flags |= XBF_DONE; in xfs_do_force_shutdown()
515 xfs_alert(mp, "User initiated shutdown received."); in xfs_do_force_shutdown()
517 if (xlog_force_shutdown(mp->m_log, flags)) { in xfs_do_force_shutdown()
534 trace_xfs_force_shutdown(mp, tag, flags, fname, lnnum); in xfs_do_force_shutdown()
536 xfs_alert_tag(mp, tag, in xfs_do_force_shutdown()
539 xfs_alert(mp, in xfs_do_force_shutdown()
550 struct xfs_mount *mp) in xfs_fs_reserve_ag_blocks() argument
556 mp->m_finobt_nores = false; in xfs_fs_reserve_ag_blocks()
557 while ((pag = xfs_perag_next(mp, pag))) { in xfs_fs_reserve_ag_blocks()
564 xfs_warn(mp, in xfs_fs_reserve_ag_blocks()
566 xfs_force_shutdown(mp, SHUTDOWN_CORRUPT_INCORE); in xfs_fs_reserve_ag_blocks()
570 err2 = xfs_metafile_resv_init(mp); in xfs_fs_reserve_ag_blocks()
572 xfs_warn(mp, in xfs_fs_reserve_ag_blocks()
574 xfs_force_shutdown(mp, SHUTDOWN_CORRUPT_INCORE); in xfs_fs_reserve_ag_blocks()
588 struct xfs_mount *mp) in xfs_fs_unreserve_ag_blocks() argument
592 xfs_metafile_resv_free(mp); in xfs_fs_unreserve_ag_blocks()
593 while ((pag = xfs_perag_next(mp, pag))) in xfs_fs_unreserve_ag_blocks()