Fixes 2 scrub bugs: 1) Scrub recover correct data, but wrong parity 2) Scrub report wrong csum error number, or even unrecoverable error The patches are still undergoing xfstests, but currect for-linus-4.10 is already causing deadlock for btrfs/011, even without the patches. So I'd remove btrfs/011 and continue the test, even these test cases won't trigger real recover code. But the current internal test cases are quite good so far. I'll test them for several extra loop, and submit the internal test for reference. (Since it's not suitable for xfstest, so I'd only submit the test script, which needs manually to probe chunk layout) Qu Wenruo (3): btrfs: scrub: Introduce full stripe lock for RAID56 btrfs: scrub: Fix RAID56 recovery race condition btrfs: raid56: Use correct stolen pages to calculate P/Q fs/btrfs/ctree.h | 4 ++ fs/btrfs/extent-tree.c | 3 + fs/btrfs/raid56.c | 62 ++++++++++++++-- fs/btrfs/scrub.c | 192 +++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 257 insertions(+), 4 deletions(-) -- 2.10.2 -- To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
