The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* IDE DMA problems
@ 2003-03-28 19:27 Torsten Landschoff
  2003-03-28 21:09 ` Danny ter Haar
  0 siblings, 1 reply; 3+ messages in thread
From: Torsten Landschoff @ 2003-03-28 19:27 UTC (permalink / raw)
  To: linux-kernel

Hi *, 

After I lost all my data due to two disk crashes I am now building a 
raid5 on my file server. I got 3 120GB IDE drives - but I can't get
one of them to work in udma2 mode:

stargate:~# hdparm -i /dev/hda

/dev/hda:

 Model=SAMSUNG SV8004H, FwRev=QR100-09, SerialNo=0357J1FW108136
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
 RawCHS=16383/16/63, TrkSize=38997, SectSize=619, ECCbytes=4
 BuffType=DualPortCache, BuffSize=1945kB, MaxMultSect=16, MultSect=16
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=156368016
 IORDY=yes, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes: pio0 pio1 pio2 pio3 pio4
 DMA modes: mdma0 mdma1 *mdma2 udma0 udma1 udma2 udma3 udma4 udma5
 AdvancedPM=no WriteCache=enabled
 Drive Supports : fastATA-1 ATA-2 ATA-3 ATA-4 ATA-5 ATA-6

Using hdparm -X 66 to set it to udma2 just kills off dma with these
error messages:

  hda: timeout waiting for DMA
  ide_dmaproc: chipset supported ide_dma_timeout func only: 14
  hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
  hda: drive not ready for command
  blk: queue c0370084, I/O limit 4095Mb (mask 0xffffffff)
  hda: lost interrupt

The kernel I am using is 2.4.20 + xfs patches + ptrace patch:
  stargate:~# uname -a
  Linux stargate 2.4.20 #1 SMP Thu Mar 27 03:08:54 CET 2003 i686 unknown

Because of this I can't get decent performance out of my RAID5. The 
controller is on-board of a Soyo 6KD:

stargate:~# lspci -s 00:07.01 -vvvvv
00:07.1 IDE interface: Intel Corp. 82371AB PIIX4 IDE (rev 01) (prog-if 80 [Master])
        Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 64
        Region 4: I/O ports at ffa0 [size=16]

What's worse is that accessing the CD-ROM on /dev/hdc locks the system hard.
No keyboard, network, nothing. The last lines on the screen are always those:

  hdc: timeout waiting for DMA
  ide_dmaproc: chipset supported ide_dma_timeout func only: 14

The relevant drive is this:

stargate:~# hdparm -i /dev/hdc

/dev/hdc:

 Model=LITE-ON LTR-48246S, FwRev=SS0B, SerialNo=
 Config={ Fixed Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic }
 RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0
 BuffType=unknown, BuffSize=0kB, MaxMultSect=0
 (maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0
 IORDY=yes, tPIO={min:227,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes: pio0 pio1 pio2 pio3 pio4
 DMA modes: mdma0 mdma1 *mdma2 udma0 udma1 udma2
 AdvancedPM=no
 Drive Supports : Reserved : ATA-5

Using PIO works. The same cable can drive a hard drive using udma5 on 
the off board ATA/133 controller.


Two things bother me: 

a) How on earth can I get udma2 to work on the first controller? It worked
   before the crash... Whatever I do, /proc/ide/piix always tells me this:

                                Intel PIIX4 Ultra 33 Chipset.
--------------- Primary Channel ---------------- Secondary Channel -------------
                 enabled                          enabled
--------------- drive0 --------- drive1 -------- drive0 ---------- drive1 ------
DMA enabled:    yes              no              no                no
UDMA enabled:   no               no              yes               no
UDMA enabled:   X                X               2                 X

b) What's going on with /dev/hdc? More interestingly this worked with 
   knoppix 2.0 which is running some 2.4.5 kernel iirc.

Any help would be welcome. 

Thanks

	Torsten

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: IDE DMA problems
  2003-03-28 19:27 IDE DMA problems Torsten Landschoff
@ 2003-03-28 21:09 ` Danny ter Haar
  2003-03-29 13:59   ` Torsten Landschoff
  0 siblings, 1 reply; 3+ messages in thread
From: Danny ter Haar @ 2003-03-28 21:09 UTC (permalink / raw)
  To: linux-kernel

Torsten Landschoff  <torsten@debian.org> wrote:
>Using hdparm -X 66 to set it to udma2 just kills off dma with these
>error messages:
>
>  hda: timeout waiting for DMA
>  ide_dmaproc: chipset supported ide_dma_timeout func only: 14
>  hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
>  hda: drive not ready for command
>  blk: queue c0370084, I/O limit 4095Mb (mask 0xffffffff)
>  hda: lost interrupt
>

I've experienced similar "problems/events".

If i enable unix processor apic but NOT IO-APIC i don't have these
problems.

Could you recompile your kernel and see if this solves it ?
I have encountered these problems on several machines with different
hardware (p4 & amd athlon).

Regards,

Danny

-- 
Miguel   | "I can't tell if I have worked all my life or if
de Icaza |  I have never worked a single day of my life,"


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: IDE DMA problems
  2003-03-28 21:09 ` Danny ter Haar
@ 2003-03-29 13:59   ` Torsten Landschoff
  0 siblings, 0 replies; 3+ messages in thread
From: Torsten Landschoff @ 2003-03-29 13:59 UTC (permalink / raw)
  To: Danny ter Haar; +Cc: linux-kernel

Hi Danny, 

On Fri, Mar 28, 2003 at 09:09:31PM +0000, Danny ter Haar wrote:
> >Using hdparm -X 66 to set it to udma2 just kills off dma with these
> >error messages:
> >
> >  hda: timeout waiting for DMA
> >  ide_dmaproc: chipset supported ide_dma_timeout func only: 14
> >  hda: status error: status=0x58 { DriveReady SeekComplete DataRequest }
> >  hda: drive not ready for command
> >  blk: queue c0370084, I/O limit 4095Mb (mask 0xffffffff)
> >  hda: lost interrupt
> >
> 
> I've experienced similar "problems/events".
> 
> If i enable unix processor apic but NOT IO-APIC i don't have these
> problems.

The system in question is actually SMP but currently running with a 
single CPU because of a fan failure. So I think that option is enabled
by default. 

In fact it was a dumb error on my side. I did /not/ enable PIIX_TUNING
while I was sure I did. With that option the kernel configure the bus
just fine for whatever DMA the board supports. 

Currently I got another problem: When rebuilding the raid5 it fails
with an I/O error. The IDE message is not very helpful but it seems
the second disk in the raid is defective. But I guess I am down to 
pure hardware problems.

Thanks, Guys

	Torsten

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2003-03-29 13:48 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-03-28 19:27 IDE DMA problems Torsten Landschoff
2003-03-28 21:09 ` Danny ter Haar
2003-03-29 13:59   ` Torsten Landschoff

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox