Hi all, Here's a revised series cleaning up some problems and bugs found by stressing the online scrub code. Most of the problems fixed here were uncovered through more thorough testing of the online repair series, which was posted previously. The first patch replaces a panic() call in the bmap debugging verifiers with logging code that doesn't take the whole system down. This helps us to avoid panic reboots while running generic/388. The second patch fixes an uncaught error return in the rmap code. Then, we amend scrub to skip cross-referencing once the first error is found; this patch hasn't changed since its posting during the 4.17 cycle. Second is a patch adding more "finish scrub as soon as we've decided CORRUPT" checks. The next two patches refactor the quota scrub to drop all the weird code that attaches to the quota ip in favor of using the well known mechanism that we use for all other inodes. This enables us to call the data fork scrubber on the quota inodes; and the dquot iterator that we created earlier. We also adapt the rtbitmap/rtsum scrubbers to check the data forks with the same helper. The next two patches fix some broken interaction between scrub and the rest of xfs. Following that are three fixes to the scrubbers themselves -- the first checks that a btree block never contains fewer than minrecs records unless it's the top block in a tree. The second refactors the transaction allocation helper; and the last one fixes a potential ABBA deadlock in the parent scrubber. If you're going to start using this mess, you probably ought to just pull from my git trees. The kernel patches[1] should apply against 4.17-rc3. xfsprogs[2] and xfstests[3] can be found in their usual places. The git trees contain all four series' worth of changes. This is an extraordinary way to eat your data. Enjoy! Comments and questions are, as always, welcome. --D [1] https://git.kernel.org/cgit/linux/kernel/git/djwong/xfs-linux.git/log/?h=djwong-devel [2] https://git.kernel.org/cgit/linux/kernel/git/djwong/xfsprogs-dev.git/log/?h=djwong-devel [3] https://git.kernel.org/cgit/linux/kernel/git/djwong/xfstests-dev.git/log/?h=djwong-devel -- To unsubscribe from this list: send the line "unsubscribe linux-xfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html