Lines Matching refs:mp
28 xfs_mount_t *mp, /* mount point for filesystem */ in xfs_growfs_data_private() argument
42 if (nb < mp->m_sb.sb_dblocks) in xfs_growfs_data_private()
44 if ((error = xfs_sb_validate_fsb_count(&mp->m_sb, nb))) in xfs_growfs_data_private()
46 error = xfs_buf_read_uncached(mp->m_ddev_targp, in xfs_growfs_data_private()
47 XFS_FSB_TO_BB(mp, nb) - XFS_FSS_TO_BB(mp, 1), in xfs_growfs_data_private()
48 XFS_FSS_TO_BB(mp, 1), 0, &bp, NULL); in xfs_growfs_data_private()
54 nb_mod = do_div(new, mp->m_sb.sb_agblocks); in xfs_growfs_data_private()
58 nb = (xfs_rfsblock_t)nagcount * mp->m_sb.sb_agblocks; in xfs_growfs_data_private()
59 if (nb < mp->m_sb.sb_dblocks) in xfs_growfs_data_private()
62 new = nb - mp->m_sb.sb_dblocks; in xfs_growfs_data_private()
63 oagcount = mp->m_sb.sb_agcount; in xfs_growfs_data_private()
67 error = xfs_initialize_perag(mp, nagcount, &nagimax); in xfs_growfs_data_private()
72 error = xfs_trans_alloc(mp, &M_RES(mp)->tr_growdata, in xfs_growfs_data_private()
73 XFS_GROWFS_SPACE_RES(mp), 0, XFS_TRANS_RESERVE, &tp); in xfs_growfs_data_private()
96 (id.agno * (xfs_rfsblock_t)mp->m_sb.sb_agblocks); in xfs_growfs_data_private()
98 id.agsize = mp->m_sb.sb_agblocks; in xfs_growfs_data_private()
100 error = xfs_ag_init_headers(mp, &id); in xfs_growfs_data_private()
114 error = xfs_ag_extend_space(mp, tp, &id, new); in xfs_growfs_data_private()
126 if (nb > mp->m_sb.sb_dblocks) in xfs_growfs_data_private()
128 nb - mp->m_sb.sb_dblocks); in xfs_growfs_data_private()
138 mp->m_maxagi = nagimax; in xfs_growfs_data_private()
139 xfs_set_low_space_thresholds(mp); in xfs_growfs_data_private()
140 mp->m_alloc_set_aside = xfs_alloc_set_aside(mp); in xfs_growfs_data_private()
149 pag = xfs_perag_get(mp, id.agno); in xfs_growfs_data_private()
161 error = xfs_fs_reserve_ag_blocks(mp); in xfs_growfs_data_private()
173 xfs_mount_t *mp, /* mount point for filesystem */ in xfs_growfs_log_private() argument
179 if (nb < XFS_MIN_LOG_BLOCKS || nb < XFS_B_TO_FSB(mp, XFS_MIN_LOG_BYTES)) in xfs_growfs_log_private()
181 if (nb == mp->m_sb.sb_logblocks && in xfs_growfs_log_private()
182 in->isint == (mp->m_sb.sb_logstart != 0)) in xfs_growfs_log_private()
195 struct xfs_mount *mp, in xfs_growfs_imaxpct() argument
205 error = xfs_trans_alloc(mp, &M_RES(mp)->tr_growdata, in xfs_growfs_imaxpct()
206 XFS_GROWFS_SPACE_RES(mp), 0, XFS_TRANS_RESERVE, &tp); in xfs_growfs_imaxpct()
210 dpct = imaxpct - mp->m_sb.sb_imax_pct; in xfs_growfs_imaxpct()
223 struct xfs_mount *mp, in xfs_growfs_data() argument
230 if (!mutex_trylock(&mp->m_growlock)) in xfs_growfs_data()
234 if (in->imaxpct != mp->m_sb.sb_imax_pct) { in xfs_growfs_data()
235 error = xfs_growfs_imaxpct(mp, in->imaxpct); in xfs_growfs_data()
240 if (in->newblocks != mp->m_sb.sb_dblocks) { in xfs_growfs_data()
241 error = xfs_growfs_data_private(mp, in); in xfs_growfs_data()
247 if (mp->m_sb.sb_imax_pct) { in xfs_growfs_data()
248 uint64_t icount = mp->m_sb.sb_dblocks * mp->m_sb.sb_imax_pct; in xfs_growfs_data()
250 M_IGEO(mp)->maxicount = XFS_FSB_TO_INO(mp, icount); in xfs_growfs_data()
252 M_IGEO(mp)->maxicount = 0; in xfs_growfs_data()
255 error = xfs_update_secondary_sbs(mp); in xfs_growfs_data()
263 mp->m_generation++; in xfs_growfs_data()
264 mutex_unlock(&mp->m_growlock); in xfs_growfs_data()
270 xfs_mount_t *mp, in xfs_growfs_log() argument
277 if (!mutex_trylock(&mp->m_growlock)) in xfs_growfs_log()
279 error = xfs_growfs_log_private(mp, in); in xfs_growfs_log()
280 mutex_unlock(&mp->m_growlock); in xfs_growfs_log()
290 xfs_mount_t *mp, in xfs_fs_counts() argument
293 cnt->allocino = percpu_counter_read_positive(&mp->m_icount); in xfs_fs_counts()
294 cnt->freeino = percpu_counter_read_positive(&mp->m_ifree); in xfs_fs_counts()
295 cnt->freedata = percpu_counter_read_positive(&mp->m_fdblocks) - in xfs_fs_counts()
296 mp->m_alloc_set_aside; in xfs_fs_counts()
298 spin_lock(&mp->m_sb_lock); in xfs_fs_counts()
299 cnt->freertx = mp->m_sb.sb_frextents; in xfs_fs_counts()
300 spin_unlock(&mp->m_sb_lock); in xfs_fs_counts()
320 xfs_mount_t *mp, in xfs_reserve_blocks() argument
334 outval->resblks = mp->m_resblks; in xfs_reserve_blocks()
335 outval->resblks_avail = mp->m_resblks_avail; in xfs_reserve_blocks()
351 spin_lock(&mp->m_sb_lock); in xfs_reserve_blocks()
359 if (mp->m_resblks > request) { in xfs_reserve_blocks()
360 lcounter = mp->m_resblks_avail - request; in xfs_reserve_blocks()
363 mp->m_resblks_avail -= lcounter; in xfs_reserve_blocks()
365 mp->m_resblks = request; in xfs_reserve_blocks()
367 spin_unlock(&mp->m_sb_lock); in xfs_reserve_blocks()
368 error = xfs_mod_fdblocks(mp, fdblks_delta, 0); in xfs_reserve_blocks()
369 spin_lock(&mp->m_sb_lock); in xfs_reserve_blocks()
382 free = percpu_counter_sum(&mp->m_fdblocks) - in xfs_reserve_blocks()
383 mp->m_alloc_set_aside; in xfs_reserve_blocks()
387 delta = request - mp->m_resblks; in xfs_reserve_blocks()
405 spin_unlock(&mp->m_sb_lock); in xfs_reserve_blocks()
406 error = xfs_mod_fdblocks(mp, -fdblks_delta, 0); in xfs_reserve_blocks()
407 spin_lock(&mp->m_sb_lock); in xfs_reserve_blocks()
415 mp->m_resblks += fdblks_delta; in xfs_reserve_blocks()
416 mp->m_resblks_avail += fdblks_delta; in xfs_reserve_blocks()
421 outval->resblks = mp->m_resblks; in xfs_reserve_blocks()
422 outval->resblks_avail = mp->m_resblks_avail; in xfs_reserve_blocks()
425 spin_unlock(&mp->m_sb_lock); in xfs_reserve_blocks()
431 xfs_mount_t *mp, in xfs_fs_goingdown() argument
436 struct super_block *sb = freeze_bdev(mp->m_super->s_bdev); in xfs_fs_goingdown()
439 xfs_force_shutdown(mp, SHUTDOWN_FORCE_UMOUNT); in xfs_fs_goingdown()
446 xfs_force_shutdown(mp, SHUTDOWN_FORCE_UMOUNT); in xfs_fs_goingdown()
449 xfs_force_shutdown(mp, in xfs_fs_goingdown()
467 struct xfs_mount *mp, in xfs_do_force_shutdown() argument
477 if (XFS_FORCED_SHUTDOWN(mp) && !logerror) in xfs_do_force_shutdown()
486 if (xfs_log_force_umount(mp, logerror)) in xfs_do_force_shutdown()
490 xfs_alert(mp, in xfs_do_force_shutdown()
495 xfs_notice(mp, in xfs_do_force_shutdown()
500 xfs_alert_tag(mp, XFS_PTAG_SHUTDOWN_CORRUPT, in xfs_do_force_shutdown()
505 xfs_alert_tag(mp, XFS_PTAG_SHUTDOWN_LOGERROR, in xfs_do_force_shutdown()
508 xfs_alert_tag(mp, XFS_PTAG_SHUTDOWN_IOERROR, in xfs_do_force_shutdown()
511 xfs_alert_tag(mp, XFS_PTAG_SHUTDOWN_IOERROR, in xfs_do_force_shutdown()
515 xfs_alert(mp, in xfs_do_force_shutdown()
524 struct xfs_mount *mp) in xfs_fs_reserve_ag_blocks() argument
531 mp->m_finobt_nores = false; in xfs_fs_reserve_ag_blocks()
532 for (agno = 0; agno < mp->m_sb.sb_agcount; agno++) { in xfs_fs_reserve_ag_blocks()
533 pag = xfs_perag_get(mp, agno); in xfs_fs_reserve_ag_blocks()
541 xfs_warn(mp, in xfs_fs_reserve_ag_blocks()
543 xfs_force_shutdown(mp, SHUTDOWN_CORRUPT_INCORE); in xfs_fs_reserve_ag_blocks()
554 struct xfs_mount *mp) in xfs_fs_unreserve_ag_blocks() argument
561 for (agno = 0; agno < mp->m_sb.sb_agcount; agno++) { in xfs_fs_unreserve_ag_blocks()
562 pag = xfs_perag_get(mp, agno); in xfs_fs_unreserve_ag_blocks()
570 xfs_warn(mp, in xfs_fs_unreserve_ag_blocks()