From: Tomasz Majchrzak Date: Wed, 26 Oct 2016 07:20:39 +0000 (+0200) Subject: raid5: revert commit 11367799f3d1 X-Git-Tag: v4.10-rc1~126^2^2~61 X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=commitdiff_plain;h=7adb072ca83d71103ecc8578bee5f73c4f1eba89;p=linux.git raid5: revert commit 11367799f3d1 Revert commit 11367799f3d1 ("md: Prevent IO hold during accessing to faulty raid5 array") as it doesn't comply with commit c3cce6cda162 ("md/raid5: ensure device failure recorded before write request returns."). That change is not required anymore as the problem is resolved by commit 16f889499a52 ("md: report 'write_pending' state when array in sync") - read request is stuck as array state is not reported correctly via sysfs attribute. Signed-off-by: Tomasz Majchrzak Signed-off-by: Shaohua Li --- diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c index 92ac251e91e6..b6e4670624b8 100644 --- a/drivers/md/raid5.c +++ b/drivers/md/raid5.c @@ -4645,9 +4645,7 @@ static void handle_stripe(struct stripe_head *sh) } if (!bio_list_empty(&s.return_bi)) { - if (test_bit(MD_CHANGE_PENDING, &conf->mddev->flags) && - (s.failed <= conf->max_degraded || - conf->mddev->external == 0)) { + if (test_bit(MD_CHANGE_PENDING, &conf->mddev->flags)) { spin_lock_irq(&conf->device_lock); bio_list_merge(&conf->return_bi, &s.return_bi); spin_unlock_irq(&conf->device_lock);