Re: New IDE code and DMA failures

From: Denis Vlasenko (vda@port.imtp.ilyichevsk.odessa.ua)
Date: Thu Apr 11 2002 - 13:44:29 EST


On 11 April 2002 10:05, Martin Dalecki wrote:
> > Since you are working on IDE subsystem, I will be glad to
> > *retain* my flaky IDE setup and test future kernels
> > for correct operation in this failure mode.
> >
> > Please inform me whenever you want me to test your patches.
>
> Guessing from the symptoms I would rather suggest that:
>
> 1. Are you sure you have the support for your chipset properly
> enabled? It's allmost a must for DMA.

I am deadly sure. lspci:
00:00.0 Host bridge: Intel Corp. 440LX/EX - 82443LX/EX Host bridge (rev 03)
00:01.0 PCI bridge: Intel Corp. 440LX/EX - 82443LX/EX AGP bridge (rev 03)
00:04.0 ISA bridge: Intel Corp. 82371AB PIIX4 ISA (rev 01)
00:04.1 IDE interface: Intel Corp. 82371AB PIIX4 IDE (rev 01)
00:04.2 USB Controller: Intel Corp. 82371AB PIIX4 USB (rev 01)
00:04.3 Bridge: Intel Corp. 82371AB PIIX4 ACPI (rev 01)
00:06.0 Ethernet controller: 3Com Corporation 3c905B 100BaseTX [Cyclone] (rev 24)
00:0a.0 VGA compatible controller: Matrox Graphics, Inc. MGA 2164W [Millennium II]
00:0c.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8029(AS)

/boot/2.4.7/config:
CONFIG_BLK_DEV_PIIX=y

> 2. Could you please report about the hardware you have. There are
> chipsets around there which are using theyr own transport layer
> implementations. host chip (aka south bridge) disk types and so on.

# hdparm -i /dev/hda
 Model=Maxtor 51369U3, FwRev=DA620CQ0, SerialNo=EK3HAE61C
 Config={ Fixed }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=57
 BuffType=3(DualPortCache), BuffSize=2048kB, MaxMultSect=16, MultSect=16
 DblWordIO=no, maxPIO=2(fast), DMA=yes, maxDMA=0(slow)
 CurCHS=17475/15/63, CurSects=16513875, LBA=yes
 LBA CHS=512/511/63 Remapping, LBA=yes, LBAsects=26520480
 tDMA={min:120,rec:120}, DMA modes: mword0 mword1 mword2
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, PIO modes: mode3 mode4
 UDMA modes: mode0 mode1 *mode2

# hdparm -i /dev/hdc
 Model=ST31277A, FwRev=0.75, SerialNo=VAE07701
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
 RawCHS=2482/16/63, TrkSize=0, SectSize=0, ECCbytes=4
 BuffType=0(?), BuffSize=0kB, MaxMultSect=16, MultSect=16
 DblWordIO=no, maxPIO=1(medium), DMA=yes, maxDMA=2(fast)
 CurCHS=2482/16/63, CurSects=2501856, LBA=yes
 LBA CHS=620/64/63 Remapping, LBA=yes, LBAsects=2501856
 tDMA={min:120,rec:120}, DMA modes: mword0 mword1 *mword2
 IORDY=on/off, tPIO={min:383,w/IORDY:120}, PIO modes: mode3 mode4

I have problems with hdc. hda is mostly unused, so maybe it is DMA errors
prone too but I have not seen that yet.

> 3. Some timeout values got increased to more generally used values (in esp.
> IBM microdrives advice about timeout values. Could you see whatever
> the data doesn't eventually go to the disk after georgeous
> amounts of time.

Erm.. my English comprehension fails here... do you say my disk
does not like bigger timeouts?

> 4. Could you try to set the DMA mode lower then it's set up
> per default by using hdparm and try whatever it helps?

Current params:

# hdparm /dev/hda /dev/hdc
/dev/hda:
 multcount = 16 (on)
 I/O support = 1 (32-bit)
 unmaskirq = 1 (on)
 using_dma = 1 (on)
 keepsettings = 0 (off)
 nowerr = 0 (off)
 readonly = 0 (off)
 BLKRAGET failed: Invalid argument
 geometry = 1754/240/63, sectors = 26520480, start = 0

/dev/hdc:
 multcount = 16 (on)
 I/O support = 1 (32-bit)
 unmaskirq = 1 (on)
 using_dma = 1 (on)
 keepsettings = 0 (off)
 nowerr = 0 (off)
 readonly = 0 (off)
 BLKRAGET failed: Invalid argument
 geometry = 620/64/63, sectors = 2501856, start = 0

I can't quite figure what MW/UDMA mode is active.

--
vda
-
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/



This archive was generated by hypermail 2b29 : Mon Apr 15 2002 - 22:00:18 EST