Re: [PATCH] md/raid10: properly indicate failure when ending a failed write request

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 6/25/21 2:27 AM, wsy@xxxxxxxxxx wrote:
Similar to commit 2417b9869b81882ab90fd5ed1081a1cb2d4db1dd, this patch
fixes the same bug in raid10.

Fixes: 7cee6d4e6035 ("md/raid10: end bio when the device faulty")
Signed-off-by: Wei Shuyu <wsy@xxxxxxxxxx>
---

Maybe there are other bugs fixed in one but left open in the other?

  drivers/md/raid10.c | 2 ++
  1 file changed, 2 insertions(+)

diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c
index 13f5e6b2a73d..f9c3b2323d7c 100644
--- a/drivers/md/raid10.c
+++ b/drivers/md/raid10.c
@@ -475,6 +475,8 @@ static void raid10_end_write_request(struct bio *bio)
  			if (!test_bit(Faulty, &rdev->flags))
  				set_bit(R10BIO_WriteError, &r10_bio->state);
  			else {
+				/* Fail the request */
+				set_bit(R10BIO_Degraded, &r10_bio->state);
  				r10_bio->devs[slot].bio = NULL;
  				to_put = bio;
  				dec_rdev = 1;

While at it, could you also delete the incorrect comment? I don't know how the above part is relevant
with failfast after the refactor.

                        /*
                         * When the device is faulty, it is not necessary to
                         * handle write error.
-                        * For failfast, this is the only remaining device,
-                        * We need to retry the write without FailFast.
                         */

Thanks,
Guoqing



[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux