diff options
author | Dave Chinner <dchinner@redhat.com> | 2023-02-13 09:14:52 +1100 |
---|---|---|
committer | Dave Chinner <dchinner@redhat.com> | 2023-02-13 09:14:52 +1100 |
commit | 7ac2ff8bb3713c7cb43564c04384af2ee7cc1f8d (patch) | |
tree | f2e0f56d2c583a5d5f9d95892184eb51c8cef920 /fs/xfs/libxfs/xfs_bmap.c | |
parent | 20a5eab49d354a2837e0af3f07f92a104de52804 (diff) | |
download | lwn-7ac2ff8bb3713c7cb43564c04384af2ee7cc1f8d.tar.gz lwn-7ac2ff8bb3713c7cb43564c04384af2ee7cc1f8d.zip |
xfs: perags need atomic operational state
We currently don't have any flags or operational state in the
xfs_perag except for the pagf_init and pagi_init flags. And the
agflreset flag. Oh, there's also the pagf_metadata and pagi_inodeok
flags, too.
For controlling per-ag operations, we are going to need some atomic
state flags. Hence add an opstate field similar to what we already
have in the mount and log, and convert all these state flags across
to atomic bit operations.
Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Allison Henderson <allison.henderson@oracle.com>
Reviewed-by: Darrick J. Wong <djwong@kernel.org>
Diffstat (limited to 'fs/xfs/libxfs/xfs_bmap.c')
-rw-r--r-- | fs/xfs/libxfs/xfs_bmap.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/xfs/libxfs/xfs_bmap.c b/fs/xfs/libxfs/xfs_bmap.c index 504fd69fe2c6..a2282655a0f6 100644 --- a/fs/xfs/libxfs/xfs_bmap.c +++ b/fs/xfs/libxfs/xfs_bmap.c @@ -3147,7 +3147,7 @@ xfs_bmap_longest_free_extent( int error = 0; pag = xfs_perag_get(mp, ag); - if (!pag->pagf_init) { + if (!xfs_perag_initialised_agf(pag)) { error = xfs_alloc_read_agf(pag, tp, XFS_ALLOC_FLAG_TRYLOCK, NULL); if (error) { |