linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [patch 7/12] s390: fba dasd i/o errors.
@ 2005-07-11 16:36 Martin Schwidefsky
  2005-07-12 10:22 ` Denis Vlasenko
  0 siblings, 1 reply; 4+ messages in thread
From: Martin Schwidefsky @ 2005-07-11 16:36 UTC (permalink / raw)
  To: akpm, horst.hummel, linux-kernel

[patch 7/12] s390: fba dasd i/o errors.

From: Horst Hummel <horst.hummel@de.ibm.com>

The FBA discipline does not use retries for failed requests. A request
fails after the first unsuccessful start attempt. There are some rare
conditions (e.g. CIO path recovery) in which the start of an i/o on
a fba device can fail. A tiny amount of retries is therefore
reasonable.

Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>

diffstat:
 drivers/s390/block/dasd_fba.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletion(-)

diff -urpN linux-2.6/drivers/s390/block/dasd_fba.c linux-2.6-patched/drivers/s390/block/dasd_fba.c
--- linux-2.6/drivers/s390/block/dasd_fba.c	2005-06-17 21:48:29.000000000 +0200
+++ linux-2.6-patched/drivers/s390/block/dasd_fba.c	2005-07-11 17:37:46.000000000 +0200
@@ -4,7 +4,7 @@
  * Bugreports.to..: <Linux390@de.ibm.com>
  * (C) IBM Corporation, IBM Deutschland Entwicklung GmbH, 1999,2000
  *
- * $Revision: 1.39 $
+ * $Revision: 1.40 $
  */
 
 #include <linux/config.h>
@@ -354,6 +354,8 @@ dasd_fba_build_cp(struct dasd_device * d
 	}
 	cqr->device = device;
 	cqr->expires = 5 * 60 * HZ;	/* 5 minutes */
+	cqr->retries = 32;
+	cqr->buildclk = get_clock();
 	cqr->status = DASD_CQR_FILLED;
 	return cqr;
 }

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

* Re: [patch 7/12] s390: fba dasd i/o errors.
  2005-07-11 16:36 [patch 7/12] s390: fba dasd i/o errors Martin Schwidefsky
@ 2005-07-12 10:22 ` Denis Vlasenko
  2005-07-12 10:36   ` Martin Schwidefsky
  0 siblings, 1 reply; 4+ messages in thread
From: Denis Vlasenko @ 2005-07-12 10:22 UTC (permalink / raw)
  To: Martin Schwidefsky, akpm, horst.hummel, linux-kernel

On Monday 11 July 2005 19:36, Martin Schwidefsky wrote:
> [patch 7/12] s390: fba dasd i/o errors.
> 
> From: Horst Hummel <horst.hummel@de.ibm.com>
> 
> The FBA discipline does not use retries for failed requests. A request
> fails after the first unsuccessful start attempt. There are some rare
> conditions (e.g. CIO path recovery) in which the start of an i/o on
> a fba device can fail. A tiny amount of retries is therefore
> reasonable.
> 
> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
> 
> diffstat:
>  drivers/s390/block/dasd_fba.c |    4 +++-
>  1 files changed, 3 insertions(+), 1 deletion(-)
> 
> diff -urpN linux-2.6/drivers/s390/block/dasd_fba.c linux-2.6-patched/drivers/s390/block/dasd_fba.c
> --- linux-2.6/drivers/s390/block/dasd_fba.c	2005-06-17 21:48:29.000000000 +0200
> +++ linux-2.6-patched/drivers/s390/block/dasd_fba.c	2005-07-11 17:37:46.000000000 +0200
> @@ -4,7 +4,7 @@
>   * Bugreports.to..: <Linux390@de.ibm.com>
>   * (C) IBM Corporation, IBM Deutschland Entwicklung GmbH, 1999,2000
>   *
> - * $Revision: 1.39 $
> + * $Revision: 1.40 $
>   */
>  
>  #include <linux/config.h>
> @@ -354,6 +354,8 @@ dasd_fba_build_cp(struct dasd_device * d
>  	}
>  	cqr->device = device;
>  	cqr->expires = 5 * 60 * HZ;	/* 5 minutes */
> +	cqr->retries = 32;

2..4 maybe, but 32? This isn't tiny by any account.

> +	cqr->buildclk = get_clock();
>  	cqr->status = DASD_CQR_FILLED;
>  	return cqr;
>  }


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

* Re: [patch 7/12] s390: fba dasd i/o errors.
  2005-07-12 10:22 ` Denis Vlasenko
@ 2005-07-12 10:36   ` Martin Schwidefsky
  2005-07-12 12:36     ` Denis Vlasenko
  0 siblings, 1 reply; 4+ messages in thread
From: Martin Schwidefsky @ 2005-07-12 10:36 UTC (permalink / raw)
  To: Denis Vlasenko; +Cc: akpm, Horst Hummel, linux-kernel

> > @@ -354,6 +354,8 @@ dasd_fba_build_cp(struct dasd_device * d
> >          }
> >          cqr->device = device;
> >          cqr->expires = 5 * 60 * HZ;         /* 5 minutes */
> > +        cqr->retries = 32;
>
> 2..4 maybe, but 32? This isn't tiny by any account.

Are you arguing the use of the adjective "tiny" or the technical
aspects of using 32 as the number of retries for dasd fba?
In the dasd driver we use a retry count of 255 as "standard", so
32 is indeed much smaller than that. If you can call it tiny,
well who cares??

blue skies,
   Martin

Martin Schwidefsky
Linux for zSeries Development & Services
IBM Deutschland Entwicklung GmbH



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

* Re: [patch 7/12] s390: fba dasd i/o errors.
  2005-07-12 10:36   ` Martin Schwidefsky
@ 2005-07-12 12:36     ` Denis Vlasenko
  0 siblings, 0 replies; 4+ messages in thread
From: Denis Vlasenko @ 2005-07-12 12:36 UTC (permalink / raw)
  To: Martin Schwidefsky; +Cc: akpm, Horst Hummel, linux-kernel

On Tuesday 12 July 2005 13:36, Martin Schwidefsky wrote:
> > > @@ -354,6 +354,8 @@ dasd_fba_build_cp(struct dasd_device * d
> > >          }
> > >          cqr->device = device;
> > >          cqr->expires = 5 * 60 * HZ;         /* 5 minutes */
> > > +        cqr->retries = 32;
> >
> > 2..4 maybe, but 32? This isn't tiny by any account.
> 
> Are you arguing the use of the adjective "tiny" or the technical
> aspects of using 32 as the number of retries for dasd fba?
> In the dasd driver we use a retry count of 255 as "standard", so
> 32 is indeed much smaller than that. If you can call it tiny,
> well who cares??

I meant that 32 retries is too many. Retries tend to multiply.
If OS does N retries per failed attempt and disk drive does M
attempts per attempt, you end up with N*M retries.
Add a few 'retrying' layers, and you have a 'I cannot umount
this fscking scratched CDROM, maybe tomorrow' type disaster.

It's better to err to the smaller number of attempts.
--
vda


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

end of thread, other threads:[~2005-07-12 12:38 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-07-11 16:36 [patch 7/12] s390: fba dasd i/o errors Martin Schwidefsky
2005-07-12 10:22 ` Denis Vlasenko
2005-07-12 10:36   ` Martin Schwidefsky
2005-07-12 12:36     ` Denis Vlasenko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).