All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2][RESEND] md/raid10: properly indicate failure when ending a failed write request
@ 2021-06-28  7:15 wsy
  2021-06-29  7:24 ` Guoqing Jiang
  0 siblings, 1 reply; 3+ messages in thread
From: wsy @ 2021-06-28  7:15 UTC (permalink / raw)
  To: linux-raid; +Cc: wsy, song, jgq516, paul.clements, yuyufen

Similar to commit 2417b9869b81882ab90fd5ed1081a1cb2d4db1dd, this patch
fixes the same bug in raid10. Also cleanup the comments.

Fixes: 7cee6d4e6035 ("md/raid10: end bio when the device faulty")
Signed-off-by: Wei Shuyu <wsy@dogben.com>
---
 drivers/md/raid1.c  | 2 --
 drivers/md/raid10.c | 4 ++--
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c
index ced076ba560e..753822ca9613 100644
--- a/drivers/md/raid1.c
+++ b/drivers/md/raid1.c
@@ -472,8 +472,6 @@ static void raid1_end_write_request(struct bio *bio)
 		/*
 		 * 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.
 		 */
 		if (!test_bit(Faulty, &rdev->flags))
 			set_bit(R1BIO_WriteError, &r1_bio->state);
diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c
index 13f5e6b2a73d..40e845fb9717 100644
--- a/drivers/md/raid10.c
+++ b/drivers/md/raid10.c
@@ -469,12 +469,12 @@ static void raid10_end_write_request(struct bio *bio)
 			/*
 			 * 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.
 			 */
 			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;
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2][RESEND] md/raid10: properly indicate failure when ending a failed write request
  2021-06-28  7:15 [PATCH v2][RESEND] md/raid10: properly indicate failure when ending a failed write request wsy
@ 2021-06-29  7:24 ` Guoqing Jiang
  2021-07-23 17:19   ` Song Liu
  0 siblings, 1 reply; 3+ messages in thread
From: Guoqing Jiang @ 2021-06-29  7:24 UTC (permalink / raw)
  To: wsy, linux-raid; +Cc: song, jgq516, paul.clements, yuyufen



On 6/28/21 3:15 PM, wsy@dogben.com wrote:
> Similar to commit 2417b9869b81882ab90fd5ed1081a1cb2d4db1dd, this patch
> fixes the same bug in raid10. Also cleanup the comments.
>
> Fixes: 7cee6d4e6035 ("md/raid10: end bio when the device faulty")
> Signed-off-by: Wei Shuyu <wsy@dogben.com>
> ---
>   drivers/md/raid1.c  | 2 --
>   drivers/md/raid10.c | 4 ++--
>   2 files changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c
> index ced076ba560e..753822ca9613 100644
> --- a/drivers/md/raid1.c
> +++ b/drivers/md/raid1.c
> @@ -472,8 +472,6 @@ static void raid1_end_write_request(struct bio *bio)
>   		/*
>   		 * 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.
>   		 */
>   		if (!test_bit(Faulty, &rdev->flags))
>   			set_bit(R1BIO_WriteError, &r1_bio->state);
> diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c
> index 13f5e6b2a73d..40e845fb9717 100644
> --- a/drivers/md/raid10.c
> +++ b/drivers/md/raid10.c
> @@ -469,12 +469,12 @@ static void raid10_end_write_request(struct bio *bio)
>   			/*
>   			 * 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.
>   			 */
>   			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;

Acked-by: Guoqing Jiang <jiangguoqing@kylinos.cn>

Thanks,
Guoqing

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2][RESEND] md/raid10: properly indicate failure when ending a failed write request
  2021-06-29  7:24 ` Guoqing Jiang
@ 2021-07-23 17:19   ` Song Liu
  0 siblings, 0 replies; 3+ messages in thread
From: Song Liu @ 2021-07-23 17:19 UTC (permalink / raw)
  To: Guoqing Jiang
  Cc: Wei Shuyu, linux-raid, Guoqing Jiang, Paul Clements, Yufen Yu

On Tue, Jun 29, 2021 at 12:24 AM Guoqing Jiang <jiangguoqing@kylinos.cn> wrote:
>
>
>
> On 6/28/21 3:15 PM, wsy@dogben.com wrote:
> > Similar to commit 2417b9869b81882ab90fd5ed1081a1cb2d4db1dd, this patch
> > fixes the same bug in raid10. Also cleanup the comments.
> >
> > Fixes: 7cee6d4e6035 ("md/raid10: end bio when the device faulty")
> > Signed-off-by: Wei Shuyu <wsy@dogben.com>

Applied to md-next.

I fixed some issues highlighted by checkpatch.pl. For the next time, please run
checkpatch.pl before sending the patch.

Thanks,
Song

> > ---
> >   drivers/md/raid1.c  | 2 --
> >   drivers/md/raid10.c | 4 ++--
> >   2 files changed, 2 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c
> > index ced076ba560e..753822ca9613 100644
> > --- a/drivers/md/raid1.c
> > +++ b/drivers/md/raid1.c
> > @@ -472,8 +472,6 @@ static void raid1_end_write_request(struct bio *bio)
> >               /*
> >                * 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.
> >                */
> >               if (!test_bit(Faulty, &rdev->flags))
> >                       set_bit(R1BIO_WriteError, &r1_bio->state);
> > diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c
> > index 13f5e6b2a73d..40e845fb9717 100644
> > --- a/drivers/md/raid10.c
> > +++ b/drivers/md/raid10.c
> > @@ -469,12 +469,12 @@ static void raid10_end_write_request(struct bio *bio)
> >                       /*
> >                        * 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.
> >                        */
> >                       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;
>
> Acked-by: Guoqing Jiang <jiangguoqing@kylinos.cn>
>
> Thanks,
> Guoqing

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-07-23 17:20 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-28  7:15 [PATCH v2][RESEND] md/raid10: properly indicate failure when ending a failed write request wsy
2021-06-29  7:24 ` Guoqing Jiang
2021-07-23 17:19   ` Song Liu

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.