From: NeilBrown Date: Thu, 18 Sep 2014 01:09:04 +0000 (+1000) Subject: md/raid1: fix_read_error should act on all non-faulty devices. X-Git-Tag: fixes-for-v3.18-merge-window~77^2 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b8cb6b4c121e1bf1963c16ed69e7adcb1bc301cd;p=pandora-kernel.git md/raid1: fix_read_error should act on all non-faulty devices. If a devices is being recovered it is not InSync and is not Faulty. If a read error is experienced on that device, fix_read_error() will be called, but it ignores non-InSync devices. So it will neither fix the error nor fail the device. It is incorrect that fix_read_error() ignores non-InSync devices. It should only ignore Faulty devices. So fix it. This became a bug when we allowed reading from a device that was being recovered. It is suitable for any subsequent -stable kernel. Fixes: da8840a747c0dbf49506ec906757a6b87b9741e9 Cc: stable@vger.kernel.org (v3.5+) Reported-by: Alexander Lyakas Tested-by: Alexander Lyakas Signed-off-by: NeilBrown --- Reading git-diff-tree failed