• Wang Shilong's avatar
    Btrfs: scrub raid56 stripes in the right way · 3b080b25
    Wang Shilong authored
    Steps to reproduce:
     # mkfs.btrfs -f /dev/sda[8-11] -m raid5 -d raid5
     # mount /dev/sda8 /mnt
     # btrfs scrub start -BR /mnt
     # echo $? <--unverified errors make return value be 3
    
    This is because we don't setup right mapping between physical
    and logical address for raid56, which makes checksum mismatch.
    But we will find everthing is fine later when rechecking using
    btrfs_map_block().
    
    This patch fixed the problem by settuping right mappings and
    we only verify data stripes' checksums.
    Signed-off-by: default avatarWang Shilong <wangsl.fnst@cn.fujitsu.com>
    Signed-off-by: default avatarChris Mason <clm@fb.com>
    3b080b25
scrub.c 92.9 KB