• N
    raid5: don't increment read_errors on EILSEQ return · 0a43d5d4
    Nigel Croxon 提交于
    [ Upstream commit b76b4715eba0d0ed574f58918b29c1b2f0fa37a8 ]
    
    While MD continues to count read errors returned by the lower layer.
    If those errors are -EILSEQ, instead of -EIO, it should NOT increase
    the read_errors count.
    
    When RAID6 is set up on dm-integrity target that detects massive
    corruption, the leg will be ejected from the array.  Even if the
    issue is correctable with a sector re-write and the array has
    necessary redundancy to correct it.
    
    The leg is ejected because it runs up the rdev->read_errors beyond
    conf->max_nr_stripes.  The return status in dm-drypt when there is
    a data integrity error is -EILSEQ (BLK_STS_PROTECTION).
    Signed-off-by: NNigel Croxon <ncroxon@redhat.com>
    Signed-off-by: NSong Liu <songliubraving@fb.com>
    Signed-off-by: NSasha Levin <sashal@kernel.org>
    0a43d5d4
raid5.c 239.8 KB