]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commit
xfs: perags need atomic operational state
authorDave Chinner <dchinner@redhat.com>
Tue, 9 May 2023 09:29:49 +0000 (11:29 +0200)
committerCarlos Maiolino <cem@kernel.org>
Wed, 10 May 2023 08:15:42 +0000 (10:15 +0200)
commit03dc2ef2a52715ca7557b9c35b0d39ee1ccddfff
treedb002007a989fe4096affa86988ec5d2120614d4
parent887a7edd7d70577043dae314f5336befca995d3f
xfs: perags need atomic operational state

Source kernel commit: 7ac2ff8bb3713c7cb43564c04384af2ee7cc1f8d

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>
Signed-off-by: Carlos Maiolino <cem@kernel.org>
13 files changed:
include/libxfs.h
libfrog/bitmask.h [new file with mode: 0644]
libxfs/init.c
libxfs/libxfs_priv.h
libxfs/xfs_ag.h
libxfs/xfs_alloc.c
libxfs/xfs_alloc_btree.c
libxfs/xfs_bmap.c
libxfs/xfs_ialloc.c
libxfs/xfs_ialloc_btree.c
libxfs/xfs_refcount_btree.c
libxfs/xfs_rmap_btree.c
repair/rmap.c