Re: [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- From: Andrew Morton <akpm@xxxxxxxx>
- Date: Wed, 26 Apr 2006 16:35:36 -0700
Mark Lord <lkml@xxxxxx> wrote:
That's if we think -stable needs this fixed.
Let's say a bunch of read bio's get coalesced into a single
200+ sector request. This then fails on one single bad sector
out of the 200+. Without the patch, there is a very good chance
that sd.c will simply fail the entire request, all 200+ sectors.
With the patch, it will fail the first block, and then retry
the remaining blocks. And repeat this until something works,
or until everything has failed one by one.
Yowch. I have the feeling that this'll take our EIO-handling time from
far-too-long to far-too-long*200.
I am still traumatised by my recent ten-minute wait for a dodgy DVD to
become ejectable.
I don't think -stable needs this, personally.
Better, but still not the best.
What I need to have happen when a request is failed due to bad-media,
is have it split the request into a sequence of single-block requests
that are passed to the LLD one at a time. The ones with real bad
sectors will then be independently failed, and the rest will get done.
Much better. Much more complex.
I'm thinking about something like that, just not sure whether to put it
(initially) in libata, sd.c, or the block layer.
block, I suspect. My DVD trauma was IDE-induced. Jens is mulling the
problem - I'd suggest you coordinate with him.
It would be a good thing to fix.
It's moderately hard to test, though. Easy enough for DVDs and CDs, but
it's harder to take a marker pen to a hard drive.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
- Follow-Ups:
- Re: [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- From: Mark Lord
- Re: [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- From: Avi Kivity
- Re: [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- From: Rogier Wolff
- Re: [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- From: Mark Lord
- Re: [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- References:
- [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- From: Mark Lord
- Re: [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- From: James Bottomley
- Re: [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- From: Andrew Morton
- Re: [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- From: Mark Lord
- [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- Prev by Date: Re: [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- Next by Date: A Question for the Worlds Smartest Network Minds
- Previous by thread: Re: [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- Next by thread: Re: [PATCH] drivers/scsi/sd.c: fix uninitialized variable in handling medium errors
- Index(es):
Relevant Pages
|