Re: [PATCH 1/3] Make the IDE DMA timeout modifiable

From: Sergei Shtylyov
Date: Tue Jul 17 2007 - 10:23:52 EST


Hello.

Rogier Wolff wrote:

Ah, that makes sense -- during PIO interrupts happen a lot more often.
20 secs still seem to be too much.

I don't think so, even for modern drives.
Figure 8-10 seconds max for spin-up,
plus 6-9 seconds to do a sector re-assignment
or retries on a bad block (a measured *real-life* value).

That adds up to 14-19 seconds, so 20 seconds is probably good.

Still, this does need to be adjustable for faster (CF) devices,
and slower (optical/tape) devices, rather than just a single
set of fixed timeout values.

In real life, with real bad blocks on real harddrives, some harddrives
take more than the DMA TIMEOUT time to read a single block, even without
having to spin up.

Yeah, "shit happens".

The current code then resets the drive, on which the drive reports
"busy, not ready for command", and things go downhill from there.

You are clearly mixing things: this message is a result of retrying command in PIO mode (that fails because the drive is still busy), and then the drives are actually reset. If they keep being busy *after* that, all I'd say is dump them ASAP. ;-)

Roger.

MBR, Sergei
-
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/