[PATCHSET v29.4 15/18] xfs_scrub: updates for 6.9

Darrick J. Wong
2024-03-26T02:58:39Z

Hi all,

Now that the kernel has the code for userspace to upload a clean bill of
health (which clears out all the secondary markers of ill health that
hint at forgotten sicknesses), let's make xfs_scrub do that if the
filesystem is actually clean.

Second, restructure the xfs_scrub program so that it scrubs file link
counts and quotacheck in parallel.

If you're going to start using this code, I strongly recommend pulling
from my git trees, which are linked below.

This has been running on the djcloud for months with no problems. Enjoy!
Comments and questions are, as always, welcome.

--D

xfsprogs git tree:
https://git.kernel.org/cgit/linux/kernel/git/djwong/xfsprogs-dev.git/log/?h=scrub-6.9-fixes
---
Commits in this patchset:
* xfs_scrub: implement live quotacheck inode scan
* xfs_scrub: check file link counts
* xfs_scrub: update health status if we get a clean bill of health
* xfs_scrub: use multiple threads to run in-kernel metadata scrubs that scan inodes
* xfs_scrub: upload clean bills of health
---
libfrog/scrub.c | 15 ++++
man/man2/ioctl_xfs_scrub_metadata.2 | 10 ++
scrub/phase1.c | 38 +++++++++
scrub/phase4.c | 17 ++++
scrub/phase5.c | 150 ++++++++++++++++++++++++++++++++---
scrub/repair.c | 18 ++++
scrub/repair.h | 1
scrub/scrub.c | 43 +++++++---
scrub/scrub.h | 3 +
9 files changed, 265 insertions(+), 30 deletions(-)