Hi all, auditing the perag code for the generic groups feature found an issue where recovery of an extfree intent without a logged done entry will fail when the log also contained the transaction that added the AG to the extent is freed to because the file system geometry in the superblock is only updated updated and the perag structures are only created after log recovery has finished. This version now also ensures the transactions using the new AGs are not in the same CIL checkpoint as the growfs transaction. Diffstat: libxfs/xfs_ag.c | 69 +++----------- libxfs/xfs_ag.h | 10 +- libxfs/xfs_ag_resv.c | 18 +-- libxfs/xfs_ialloc.c | 14 +- libxfs/xfs_log_recover.h | 2 libxfs/xfs_rtbitmap.c | 3 libxfs/xfs_sb.c | 97 +++++++++++++++---- libxfs/xfs_sb.h | 3 libxfs/xfs_shared.h | 18 --- scrub/rtbitmap_repair.c | 26 ++--- xfs_buf_item_recover.c | 27 +++++ xfs_fsops.c | 102 ++++++++++++-------- xfs_log_recover.c | 30 ++++-- xfs_mount.c | 9 - xfs_rtalloc.c | 98 ++++++++++--------- xfs_trans.c | 231 ++++++++++++----------------------------------- xfs_trans.h | 15 +-- xfs_trans_dquot.c | 2 18 files changed, 368 insertions(+), 406 deletions(-)