[PATCH v7 0/5] xfs: support shrinking free space in the last AG

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi folks,

v6: https://lore.kernel.org/linux-xfs/20210126125621.3846735-1-hsiangkao@xxxxxxxxxx/

This patchset attempts to support shrinking free space in the last AG.
This version mainly addresses previous review of v6. hope I don't miss
any previous comments. Details in the changelog.

gitweb:
https://git.kernel.org/pub/scm/linux/kernel/git/xiang/linux.git/ tags/xfs/shrink_lastag_v7

changes since v6:
 - rebase on the latest for-next;
 - [1/5] refine the comment (Brian);
 - [2/5] keep `delta' constant as nb - mp->m_sb.sb_dblocks, avoid
         `extent' boolean but introduce `lastag_resetagres' for growfs
         per-AG reservation judgement (Brian, Darrick);
 - [3/5] pass in agno directly for xfs_ag_shrink_space() (Brian);
 - [4/5] fix growfs 1 agcount case (Brian);
 - [4/5] refine xfs_fs_reserve_ag_blocks() in the end only for growfs
         due to mp->m_finobt_nores == false (Brian);
 - [5/5] broadened error tag (Brian, although I think xfs_mod_fdblocks
         shouldn't be triggered then.)

Thanks for the time!

Thanks,
Gao Xiang

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

Gao Xiang (5):
  xfs: update lazy sb counters immediately for resizefs
  xfs: hoist out xfs_resizefs_init_new_ags()
  xfs: introduce xfs_ag_shrink_space()
  xfs: support shrinking unused space in the last AG
  xfs: add error injection for per-AG resv failure

 fs/xfs/libxfs/xfs_ag.c       | 108 +++++++++++++++++++
 fs/xfs/libxfs/xfs_ag.h       |   2 +
 fs/xfs/libxfs/xfs_ag_resv.c  |   6 +-
 fs/xfs/libxfs/xfs_errortag.h |   4 +-
 fs/xfs/xfs_error.c           |   2 +
 fs/xfs/xfs_fsops.c           | 195 ++++++++++++++++++++++-------------
 fs/xfs/xfs_trans.c           |   1 -
 7 files changed, 242 insertions(+), 76 deletions(-)

-- 
2.27.0




[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux