[PATCHSET v27.0 0/4] xfsprogs: force rebuilding of metadata

Darrick J. Wong
2023-11-22T23:07:46Z

Hi all,

This patchset adds a new IFLAG to the scrub ioctl so that userspace can
force a rebuild of an otherwise consistent piece of metadata. This will
eventually enable the use of online repair to relocate metadata during a
filesystem reorganization (e.g. shrink). For now, it facilitates stress
testing of online repair without needing the debugging knobs to be
enabled.

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

kernel git tree:
https://git.kernel.org/cgit/linux/kernel/git/djwong/xfs-linux.git/log/?h=repair-force-rebuild

xfsprogs git tree:
https://git.kernel.org/cgit/linux/kernel/git/djwong/xfsprogs-dev.git/log/?h=repair-force-rebuild

fstests git tree:
https://git.kernel.org/cgit/linux/kernel/git/djwong/xfstests-dev.git/log/?h=repair-force-rebuild
---
io/scrub.c | 24 ++++++++++++++-------
man/man8/xfs_io.8 | 3 +++
scrub/phase1.c | 28 ++++++++++++++++++++++++
scrub/scrub.c | 61 ++++++++++++++++++++++++++++-------------------------
scrub/scrub.h | 1 +
scrub/vfs.c | 2 +-
scrub/xfs_scrub.c | 3 +++
scrub/xfs_scrub.h | 1 +
8 files changed, 85 insertions(+), 38 deletions(-)