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(-)