Re: PATA DMA problem leading to kernel panic on reading movie DVDs

From: Martin Lottermoser
Date: Mon May 18 2009 - 15:18:52 EST


Hi,

On Sun, May 17, 2009 at 09:35:09PM +0200, Bartlomiej Zolnierkiewicz wrote:
> Martin, this is one of ATAPI drives which support UDMA66 but have broken
> cable detection. Since 2.6.26 we have a special quirk for it ide (commit
> 3ced5c49bd2d1f2c7f769e3a54385883de63a652) and subsequent one in libata
> (commit e9f3340673c1da32041f2a282b166c72cd78632e).
>
> In your system's case the cable detection doesn't seem to work properly
> which in turn results in all kind of later problems.
>
> It could be that the quirk itself needs to be revised (I wonder if it was
> originally tested with 40-wires cable) or maybe we need some other cable
> detection fix...
>
> Please:
>
> * send 'hdparm --Istdout /dev/hdc' output
>
> * try 2.6.30-rc6 (maybe 2.6.29.3 oops has been fixed already and we just
> need to backport it)
>
> also connecting the drive using 80-wires cable and getting another hdparm
> output (+ seeing if it helps the other problems) would be very useful.

I've done that now as well. Test runs with Debian's 2.6.26 and with 2.6.30-rc6
show no problems: no disabling of DMA, no kernel panic.

The hdparm output ("hdparm --Istdout") is the same for a 40-wire cable and an
80-wire cable (checked under 2.6.26).

This indicates that your hypothesis above that it's a cable detection problem
is correct.

Just out of curiosity: is this a bug on the drive's side or in the kernel?
Or in other words: if the output of "hdparm -I" shows the drive as attached
to be able to support UDMA4, is this a statement passed through unmodified
from the drive or is this a deduction made by the kernel? I ask because
under 2.6.22.9 and 2.6.23.14 I got a message that "host side 80-wire cable
detection failed".

Should anyone find a fix to correct/circumvent this problem in the kernel,
I'ld be willing to test it on my system; just send a patch file or tell me
where to pick it up.

Regards,
Martin Lottermoser
--
Martin Lottermoser Martin.Lottermoser at _REMOVE_t-online.de
Greifswaldstrasse 28
38124 Braunschweig http://home.vrweb.de/martin.lottermoser
Germany
--
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/