Lines Matching +full:retain +full:- +full:state +full:- +full:shutdown

1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright (c) 2000-2005 Silicon Graphics, Inc.
45 #define XFS_ERR_RETRY_FOREVER -1
50 * signed 32-bit long is sufficient for a HZ value up to 24855. Making it
51 * signed lets us store the special "-1" value, meaning retry forever.
56 long retry_timeout; /* in jiffies, -1 = infinite */
60 * Per-cpu deferred inode inactivation GC lists.
75 * The struct xfsmount layout is optimised to separate read-mostly variables
76 * from variables that are frequently modified. We put the read-mostly variables
79 * Typically, read-mostly variables are those that are set at mount time and
109 struct xfs_mru_cache *m_filestream; /* per-mount filestream data */
119 uint8_t m_blkbb_log; /* blocklog - BBSHIFT */
121 uint8_t m_sectbb_log; /* sectlog - BBSHIFT */
123 uint m_blockmask; /* sb_blocksize-1 */
125 uint m_blockwmask; /* blockwsize-1 */
160 unsigned long m_opstate; /* dynamic state flags */
163 bool m_finobt_nores; /* no per-AG finobt resv. */
167 * Bitsets of per-fs metadata that have been checked and/or are sick.
180 * End of read-mostly variables. Frequently written variables and locks
183 * the read-mostly variables.
205 struct radix_tree_root m_perag_tree; /* per-ag accounting info */
216 struct xstats m_stats; /* per-fs stats */
257 #define M_IGEO(mp) (&(mp)->m_ino_geo)
273 #define XFS_FEAT_ASCIICI (1ULL << 8) /* ASCII only case-insens. */
280 #define XFS_FEAT_PQUOTINO (1ULL << 15) /* non-shared proj/grp quotas */
302 #define XFS_FEAT_GRPID (1ULL << 55) /* group-ID assigned from directory */
309 #define XFS_FEAT_NORECOVERY (1ULL << 62) /* no recovery - dirty fs */
315 return mp->m_features & XFS_FEAT_ ## NAME; \
323 mp->m_features |= XFS_FEAT_ ## NAME; \
324 xfs_sb_version_add ## name(&mp->m_sb); \
359 * These do not change dynamically - features that can come and go, such as 32 in __XFS_ADD_FEAT()
360 * bit inodes and read-only state, are kept as operational state rather than in __XFS_ADD_FEAT()
381 * Operational mount state flags in __XFS_ADD_FEAT()
389 #define XFS_OPSTATE_READONLY 4 /* read-only fs */ in __XFS_ADD_FEAT()
399 * to process queued blockgc work. If not, inodes retain their preallocations in __XFS_ADD_FEAT()
416 return test_bit(XFS_OPSTATE_ ## NAME, &mp->m_opstate); \ in __XFS_ADD_FEAT()
420 return test_and_clear_bit(XFS_OPSTATE_ ## NAME, &mp->m_opstate); \
424 return test_and_set_bit(XFS_OPSTATE_ ## NAME, &mp->m_opstate); \
429 __XFS_IS_OPSTATE(shutdown, SHUTDOWN)
443 return !test_and_set_bit(nr, &mp->m_opstate);
449 { (1UL << XFS_OPSTATE_SHUTDOWN), "shutdown" }, \
460 * Max and min values for mount-option defined I/O
473 #define SHUTDOWN_FORCE_UMOUNT (1u << 2) /* shutdown from a forced unmount */
474 #define SHUTDOWN_CORRUPT_INCORE (1u << 3) /* corrupt in-memory structures */
494 do_div(ld, mp->m_sb.sb_agblocks); in xfs_daddr_to_agno()
502 return (xfs_agblock_t) do_div(ld, mp->m_sb.sb_agblocks); in xfs_daddr_to_agbno()
526 * - The minimum number of blocks needed to support splitting a bmap btree
527 * - The blocks currently in use by the freespace btrees because they record
528 * the actual blocks that will fill per-AG metadata space reservations
534 return mp->m_alloc_set_aside + atomic64_read(&mp->m_allocbt_blks); in xfs_fdblocks_unavailable()
543 return xfs_mod_freecounter(mp, &mp->m_fdblocks, delta, reserved); in xfs_mod_fdblocks()
549 return xfs_mod_freecounter(mp, &mp->m_frextents, delta, false); in xfs_mod_frextents()