Hi all, Store the quota files in the metadata directory tree instead of the superblock. Since we're introducing a new incompat feature flag, let's also make the mount process bring up quotas in whatever state they were when the filesystem was last unmounted, instead of requiring sysadmins to remember that themselves. If you're going to start using this code, I strongly recommend pulling from my git trees, which are linked below. With a bit of luck, this should all go splendidly. Comments and questions are, as always, welcome. --D kernel git tree: https://git.kernel.org/cgit/linux/kernel/git/djwong/xfs-linux.git/log/?h=metadir-quotas-6.13 --- Commits in this patchset: * xfs: refactor xfs_qm_destroy_quotainos * xfs: use metadir for quota inodes * xfs: scrub quota file metapaths * xfs: persist quota flags with metadir --- fs/xfs/libxfs/xfs_dquot_buf.c | 190 ++++++++++++++++++++++++++++++ fs/xfs/libxfs/xfs_fs.h | 6 + fs/xfs/libxfs/xfs_quota_defs.h | 43 +++++++ fs/xfs/libxfs/xfs_sb.c | 1 fs/xfs/scrub/metapath.c | 76 ++++++++++++ fs/xfs/xfs_mount.c | 15 ++ fs/xfs/xfs_mount.h | 21 +++ fs/xfs/xfs_qm.c | 250 +++++++++++++++++++++++++++++++--------- fs/xfs/xfs_qm_bhv.c | 18 +++ fs/xfs/xfs_quota.h | 2 fs/xfs/xfs_super.c | 25 ++++ 11 files changed, 586 insertions(+), 61 deletions(-)