lkml.org 
[lkml]   [2005]   [Apr]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: How's the nforce4 support in Linux?
On Tue, 5 Apr 2005, Julien Wajsberg wrote:

> On Mar 26, 2005 12:59 AM, Julien Wajsberg <julien.wajsberg@gmail.com> wrote:
>> I own an Asus A8N-Sli motherboard with the Nforce4-Sli chipset, and I
>> experiment the following problem :
>>
>> Mar 25 22:42:55 evenflow kernel: hda: dma_timer_expiry: dma status == 0x60
>> Mar 25 22:42:55 evenflow kernel: hda: DMA timeout retry
>> Mar 25 22:42:55 evenflow kernel: hda: timeout waiting for DMA
>> Mar 25 22:42:55 evenflow kernel: hda: status error: status=0x58 {
>> DriveReady SeekComplete DataRequest }
>> Mar 25 22:42:55 evenflow kernel:
>> Mar 25 22:42:55 evenflow kernel: ide: failed opcode was: unknown
>> Mar 25 22:42:55 evenflow kernel: hda: drive not ready for command
>> Mar 25 22:42:55 evenflow kernel: hda: status timeout: status=0xd0 { Busy }
>> Mar 25 22:42:55 evenflow kernel:
>> Mar 25 22:42:55 evenflow kernel: ide: failed opcode was: unknown
>> Mar 25 22:42:55 evenflow kernel: hdb: DMA disabled
^^^^^^^^^^^^^^^^^
>> Mar 25 22:42:55 evenflow kernel: hda: drive not ready for command
>>
>> Of course, if I disable DMA with hdparm, this problem disappear.. but
>> it isn't a long-term solution ;-)
>>

The long-term solution is to replace either the drive, cable, or the
motherboard that can't do DMA. A bad DMA operation can write data
anywhere (right into the middle of the kernel). There isn't
anything software can do about it. Software sets up the
controller for a DMA operation, then waits for an interrupt
that tells it has completed or failed. Software can retry failed
operations until software gets destroyed by the hardware, but
there isn't anything else that can be done.

The fact that disabling DMA makes the problem(s) go away is
proof that it isn't a software problem. There are flash-RAM
devices that emulate IDE drives. Most of these can't do DMA
and the IDE driver doesn't accept that fact. That is a known
bug. One needs to use hdparm to tell it to stop trying to
use DMA. In your case, the driver stopped using DMA when
it found out that it didn't work. There is no bug.

Cheers,
Dick Johnson
Penguin : Linux version 2.6.11 on an i686 machine (5537.79 BogoMips).
Notice : All mail here is now cached for review by Dictator Bush.
98.36% of all statistics are fiction.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-04-06 13:31    [W:0.150 / U:0.284 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site