]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
raid5: revert commit 11367799f3d1
authorTomasz Majchrzak <tomasz.majchrzak@intel.com>
Wed, 26 Oct 2016 07:20:39 +0000 (09:20 +0200)
committerShaohua Li <shli@fb.com>
Mon, 7 Nov 2016 23:08:21 +0000 (15:08 -0800)
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 <tomasz.majchrzak@intel.com>
Signed-off-by: Shaohua Li <shli@fb.com>
drivers/md/raid5.c

index 92ac251e91e62e94043ef35a78b911a66c00e741..b6e4670624b886c72528bb37222336abc58226c2 100644 (file)
@@ -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);