linux-xfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [RFC 0/3] xfs: Add support to shrink multiple empty AGs
@ 2025-07-17 10:30 Nirjhar Roy (IBM)
  2025-07-17 10:30 ` [RFC 1/3] xfs: Re-introduce xg_active_wq field in struct xfs_group Nirjhar Roy (IBM)
                   ` (2 more replies)
  0 siblings, 3 replies; 16+ messages in thread
From: Nirjhar Roy (IBM) @ 2025-07-17 10:30 UTC (permalink / raw)
  To: linux-xfs
  Cc: ritesh.list, ojaswin, djwong, bfoster, david, nirjhar.roy.lists,
	hsiangkao

This work is based on a previous RFC[1] by Gao Xiang and various ideas
proposed by Dave Chinner in the RFC[1].

Currently the functionality of shrink is limited to shrinking the last
AG partially but not beyond that. This patch extends the functionality
to support shrinking beyond 1 AG. However the AGs that we will be remove
have to empty in order to prevent any loss of data.

The patch begins with the re-introduction of some of the data
structures that were removed, some code refactoring, then
introduction of some helper functions and finally the patch
that implements the multi AG shrink design. The final patch has
all the details including the definition of the terminologies
and the overall design.

We will have the tests soon.

[1] https://lore.kernel.org/all/20210414195240.1802221-1-hsiangkao@redhat.com/

Nirjhar Roy (IBM) (3):
  xfs: Re-introduce xg_active_wq field in struct xfs_group
  xfs: Refactoring the nagcount and delta calculation
  xfs: Add support to shrink multiple empty AGs

 fs/xfs/libxfs/xfs_ag.c        | 160 ++++++++++++++++++++-
 fs/xfs/libxfs/xfs_ag.h        |  13 ++
 fs/xfs/libxfs/xfs_alloc.c     |   9 +-
 fs/xfs/libxfs/xfs_group.c     |   4 +-
 fs/xfs/libxfs/xfs_group.h     |   1 +
 fs/xfs/xfs_buf.c              |  76 ++++++++++
 fs/xfs/xfs_buf.h              |   1 +
 fs/xfs/xfs_buf_item_recover.c |  37 +++--
 fs/xfs/xfs_extent_busy.c      |  28 ++++
 fs/xfs/xfs_extent_busy.h      |   2 +
 fs/xfs/xfs_fsops.c            | 258 ++++++++++++++++++++++++++++++----
 fs/xfs/xfs_trans.c            |   1 -
 12 files changed, 536 insertions(+), 54 deletions(-)

--
2.43.5


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2025-08-19  5:57 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-17 10:30 [RFC 0/3] xfs: Add support to shrink multiple empty AGs Nirjhar Roy (IBM)
2025-07-17 10:30 ` [RFC 1/3] xfs: Re-introduce xg_active_wq field in struct xfs_group Nirjhar Roy (IBM)
2025-07-29 20:26   ` Darrick J. Wong
2025-07-30  6:14     ` Nirjhar Roy (IBM)
2025-07-17 10:30 ` [RFC 2/3] xfs: Refactoring the nagcount and delta calculation Nirjhar Roy (IBM)
2025-07-29 20:24   ` Darrick J. Wong
2025-07-30  5:04     ` Nirjhar Roy (IBM)
2025-07-17 10:30 ` [RFC 3/3] xfs: Add support to shrink multiple empty AGs Nirjhar Roy (IBM)
2025-07-29 21:05   ` Darrick J. Wong
2025-07-30 18:36     ` Nirjhar Roy (IBM)
2025-08-12 19:07       ` Darrick J. Wong
2025-08-13  8:04         ` Nirjhar Roy (IBM)
2025-08-14 18:31           ` Darrick J. Wong
2025-08-19  5:56             ` Nirjhar Roy (IBM)
2025-07-30  4:55   ` Ritesh Harjani
2025-07-30 11:53     ` Nirjhar Roy (IBM)

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).