diff options
author | NeilBrown <neilb@suse.de> | 2014-02-05 12:17:01 +1100 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2014-02-05 12:26:04 +1100 |
commit | 1877db75589a895bbdc4c4c3f23558e57b521141 (patch) | |
tree | d0ceba265729a42c5b08cb510440c875bd009968 /drivers/md/raid5.c | |
parent | 38dbfb59d1175ef458d006556061adeaa8751b72 (diff) | |
download | talos-op-linux-1877db75589a895bbdc4c4c3f23558e57b521141.tar.gz talos-op-linux-1877db75589a895bbdc4c4c3f23558e57b521141.zip |
md/raid1: restore ability for check and repair to fix read errors.
commit 30bc9b53878a9921b02e3b5bc4283ac1c6de102a
md/raid1: fix bio handling problems in process_checks()
Move the bio_reset() to a point before where BIO_UPTODATE is checked,
so that check now always report that the bio is uptodate, even if it is not.
This causes process_check() to sometimes treat read-errors as
successful matches so the good data isn't written out.
This patch preserves the flag until it is needed.
Bug was introduced in 3.11, but backported to 3.10-stable (as it fixed
an even worse bug). So suitable for any -stable since 3.10.
Reported-and-tested-by: Michael Tokarev <mjt@tls.msk.ru>
Cc: stable@vger.kernel.org (3.10+)
Fixed: 30bc9b53878a9921b02e3b5bc4283ac1c6de102a
Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/md/raid5.c')
0 files changed, 0 insertions, 0 deletions