public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
From: "Darrick J. Wong" <djwong@kernel.org>
To: Christoph Hellwig <hch@infradead.org>
Cc: "Nirjhar Roy (IBM)" <nirjhar.roy.lists@gmail.com>,
	linux-xfs@vger.kernel.org, ritesh.list@gmail.com,
	ojaswin@linux.ibm.com, bfoster@redhat.com, david@fromorbit.com,
	hsiangkao@linux.alibaba.com
Subject: Re: [RFC V3 0/3] xfs: Add support to shrink multiple empty AGs
Date: Wed, 5 Nov 2025 11:13:20 -0800	[thread overview]
Message-ID: <20251105191320.GD196370@frogsfrogsfrogs> (raw)
In-Reply-To: <aQtNVxaIKy6hpuZh@infradead.org>

On Wed, Nov 05, 2025 at 05:12:55AM -0800, Christoph Hellwig wrote:
> On Wed, Nov 05, 2025 at 01:26:50PM +0530, Nirjhar Roy (IBM) wrote:
> > Sorry for the delayed response. So, my initial plan was to get the the
> > shrink work only for empty AGs for now (since we already have the last AG
> > partial shrink merged).
> 
> For normal XFS file systems that isn't really very useful, as the last
> AG will typically have inodes as well.
> 
> Unless we decide and actively promoted inode32 for uses cases that want
> shrinking.  Which reminds me that we really should look into maybe
> promoting metadata primary AGs - on SSDs that will most likely give us
> better I/O patterns to the device, or at least none that are any worse
> without it.

I don't think we quite want inode32 per se -- I think what would be more
useful for these shrink cases is constraining inode allocations between
AG 0 and whichever AG the log is in (since you also can't move the log),
and only expanding the allowed AGs if we hit ENOSPC.

(Or as hch suggested, porting to rtgroups would at least strengthen the
justification for merging because there are no inodes to get in the way
on the realtime volume.)

> > Do you think this will be helpful for users?
> > Regarding the data/inode movement, can you please give me some
> > ideas/pointers as to how can we move the inodes. I can in parallel start
> > exploring those areas and work incrementally.
> 
> I don't really have a really good idea except for having either a new
> btree or a major modification to the inobt provide the inode number to
> disk location mapping.

Storing the inode cores in the inobt itself, which would be uuuuugly.

--D

  reply	other threads:[~2025-11-05 19:13 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-20 15:43 [RFC V3 0/3] xfs: Add support to shrink multiple empty AGs Nirjhar Roy (IBM)
2025-10-20 15:43 ` [RFC V3 1/3] xfs: Re-introduce xg_active_wq field in struct xfs_group Nirjhar Roy (IBM)
2025-10-20 15:43 ` [RFC V3 2/3] xfs: Refactoring the nagcount and delta calculation Nirjhar Roy (IBM)
2026-02-02 14:15   ` Nirjhar Roy (IBM)
2026-02-02 14:38     ` Christoph Hellwig
2026-02-02 16:50     ` Carlos Maiolino
2026-02-02 16:53       ` Nirjhar Roy (IBM)
2025-10-20 15:43 ` [RFC V3 3/3] xfs: Add support to shrink multiple empty AGs Nirjhar Roy (IBM)
2025-10-22  7:17 ` [RFC V3 0/3] " Christoph Hellwig
2025-10-22 16:05   ` Darrick J. Wong
2025-10-23  5:40     ` Nirjhar Roy (IBM)
2025-10-23  6:34     ` Christoph Hellwig
2025-11-05  7:56       ` Nirjhar Roy (IBM)
2025-11-05 13:12         ` Christoph Hellwig
2025-11-05 19:13           ` Darrick J. Wong [this message]
2025-11-10  7:05             ` Nirjhar Roy (IBM)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251105191320.GD196370@frogsfrogsfrogs \
    --to=djwong@kernel.org \
    --cc=bfoster@redhat.com \
    --cc=david@fromorbit.com \
    --cc=hch@infradead.org \
    --cc=hsiangkao@linux.alibaba.com \
    --cc=linux-xfs@vger.kernel.org \
    --cc=nirjhar.roy.lists@gmail.com \
    --cc=ojaswin@linux.ibm.com \
    --cc=ritesh.list@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox