diff --git a/[refs] b/[refs] index 2a33c3871c1e..5379d0073d7c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7bfec5f35c68121e7b1849f3f4166dd96c8da5b3 +refs/heads/master: 3a6de2924af602f9c1b5a5154438c37f2d712dfa diff --git a/trunk/drivers/md/raid5.c b/trunk/drivers/md/raid5.c index b2c83859f75b..360f2b98f62b 100644 --- a/trunk/drivers/md/raid5.c +++ b/trunk/drivers/md/raid5.c @@ -1796,6 +1796,9 @@ static void raid5_end_write_request(struct bio *bi, int error) if (!uptodate) { set_bit(WriteErrorSeen, &rdev->flags); set_bit(R5_WriteError, &sh->dev[i].flags); + if (!test_and_set_bit(WantReplacement, &rdev->flags)) + set_bit(MD_RECOVERY_NEEDED, + &rdev->mddev->recovery); } else if (is_badblock(rdev, sh->sector, STRIPE_SECTORS, &first_bad, &bad_sectors))