mbox series

[GIT,PULL,2/22] xfs: make intent items take a perag reference

Message ID 168127093858.417736.1801856127309869556.stg-ugh@frogsfrogsfrogs (mailing list archive)
State Deferred, archived
Headers show
Series [GIT,PULL,1/22] xfs: design documentation for online fsck | expand

Pull-request

git://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git tags/intents-perag-refs-6.4_2023-04-11

Message

Darrick J. Wong April 12, 2023, 3:45 a.m. UTC
Hi Dave,

Please pull this branch with changes for xfs.

As usual, I did a test-merge with the main upstream branch as of a few
minutes ago, and didn't see any conflicts.  Please let me know if you
encounter any problems.

--D

The following changes since commit 03786f0afb2ed5705a0478e14fea50a7f1a44f7e:

xfs: document future directions of online fsck (2023-04-11 18:59:52 -0700)

are available in the Git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/djwong/xfs-linux.git tags/intents-perag-refs-6.4_2023-04-11

for you to fetch changes up to 00e7b3bac1dc8961bd5aa9d39e79131c6bd81181:

xfs: give xfs_refcount_intent its own perag reference (2023-04-11 18:59:55 -0700)

----------------------------------------------------------------
xfs: make intent items take a perag reference [v24.5]

Now that we've cleaned up some code warts in the deferred work item
processing code, let's make intent items take an active perag reference
from their creation until they are finally freed by the defer ops
machinery.  This change facilitates the scrub drain in the next patchset
and will make it easier for the future AG removal code to detect a busy
AG in need of quiescing.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>

----------------------------------------------------------------
Darrick J. Wong (5):
xfs: give xfs_bmap_intent its own perag reference
xfs: pass per-ag references to xfs_free_extent
xfs: give xfs_extfree_intent its own perag reference
xfs: give xfs_rmap_intent its own perag reference
xfs: give xfs_refcount_intent its own perag reference

fs/xfs/libxfs/xfs_ag.c             |  6 ++---
fs/xfs/libxfs/xfs_alloc.c          | 22 +++++++---------
fs/xfs/libxfs/xfs_alloc.h          | 12 ++++++---
fs/xfs/libxfs/xfs_bmap.c           |  1 +
fs/xfs/libxfs/xfs_bmap.h           |  4 +++
fs/xfs/libxfs/xfs_ialloc_btree.c   |  7 +++--
fs/xfs/libxfs/xfs_refcount.c       | 33 ++++++++++-------------
fs/xfs/libxfs/xfs_refcount.h       |  4 +++
fs/xfs/libxfs/xfs_refcount_btree.c |  5 ++--
fs/xfs/libxfs/xfs_rmap.c           | 29 ++++++++------------
fs/xfs/libxfs/xfs_rmap.h           |  4 +++
fs/xfs/scrub/repair.c              |  3 ++-
fs/xfs/xfs_bmap_item.c             | 29 +++++++++++++++++++-
fs/xfs/xfs_extfree_item.c          | 54 +++++++++++++++++++++++++++-----------
fs/xfs/xfs_refcount_item.c         | 36 ++++++++++++++++++++++---
fs/xfs/xfs_rmap_item.c             | 32 +++++++++++++++++++---
16 files changed, 196 insertions(+), 85 deletions(-)