Re: 2.1.111: IDE DMA disabled?

Gadi Oxman (
Sun, 26 Jul 1998 20:25:48 +0400 (IDT)

On Sat, 25 Jul 1998, Linus Torvalds wrote:

> Which implies that at _least_ we need to disable DMA automatically if it's
> one of those chipsets.
> Personally, I never understood why DMA was enabled by default anyway. As
> far as I can tell the only sane thing is to have it always disabled by
> default, and enable it with hdparm.
> Linus

It is not enabled by default unconditionally; we currently enable
DMA only for drives which support DMA mode 2 and above (introduced
along with PIO mode 4), which filters out old (and possibly buggy)
DMA implementations.

We might want to switch to a stricter rule, but the above rule was
used by the kernel ide-dma driver from the very begining, around
1.3.50 or so, and through all that time we have not received many
reports about DMA-specific data corruption.

If the corruption in this case will indeed be fixed by replacing the
IDE cable or by lowering the chipset timing, I believe that we are
likely to see data corruption eventually, even without DMA, and the
real fix is to use a shorter IDE cable or to lower the timings in the
BIOS -- we can work around chipset bugs and black-list specific drives
if there is enough evidence which shows such bugs, but I believe that
there is really not much to be done in software regarding a bad IDE
cable; even in PIO mode, we have seen data corruption with high PIO
modes and with long IDE cables in the past.


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
Please read the FAQ at