mbox series

[v3,0/4] xfs: support shrinking free space in the last AG

Message ID 20210108190919.623672-1-hsiangkao@redhat.com (mailing list archive)
Headers show
Series xfs: support shrinking free space in the last AG | expand

Message

Gao Xiang Jan. 8, 2021, 7:09 p.m. UTC
Hi folks,

This is version 3 of
https://lore.kernel.org/r/20201028231353.640969-1-hsiangkao@redhat.com

I resend to make sure if the shrinking upstreaming development can be
done in an incremental progress.

Days ago I also made a shrinking the entire AGs prototype at,
https://git.kernel.org/pub/scm/linux/kernel/git/xiang/linux.git/log/?h=xfs/shrink2
which is still WIP / rather incomplete, yet any directions/suggestions
about that would be greatly helpful to me as well.

This mainly focuses on the previous review from Brian. Mainly to seperate
the previous patch into a patchset. I'm not sure if it looks good this
time (yet I think [PATCH 4/4] is simple enough to address the shrinking
functionality) so post it again to reconfirm that.... and also to confirm
if we need to use #ifdef DEBUG to wrap up the entrance (Although my
humble opinion is that most end users don't build with DEBUG enabled....)

xfsprogs: https://lore.kernel.org/r/20201028114010.545331-1-hsiangkao@redhat.com
xfstests: https://lore.kernel.org/r/20201028230909.639698-1-hsiangkao@redhat.com

Changes since v2:
 - [PATCH 4/4] fix a bug about "if (extend && ...)" (Brian);
 - split out the original patch (Brian, Eric, Darrick).

Thanks,
Gao Xiang

Gao Xiang (4):
  xfs: rename `new' to `delta' in xfs_growfs_data_private()
  xfs: get rid of xfs_growfs_{data,log}_t
  xfs: hoist out xfs_resizefs_init_new_ags()
  xfs: support shrinking unused space in the last AG

 fs/xfs/libxfs/xfs_ag.c |  72 ++++++++++++++++++
 fs/xfs/libxfs/xfs_ag.h |   2 +
 fs/xfs/libxfs/xfs_fs.h |   4 +-
 fs/xfs/xfs_fsops.c     | 161 +++++++++++++++++++++++++++--------------
 fs/xfs/xfs_fsops.h     |   4 +-
 fs/xfs/xfs_ioctl.c     |   4 +-
 fs/xfs/xfs_trans.c     |   1 -
 7 files changed, 185 insertions(+), 63 deletions(-)