2000-11-20 22:41:22

by Stephen Carr

[permalink] [raw]
Subject: Dma problems - Aopen Ax34pro VIA chipset seagate drive

I have just subscribed to this list - so possibly email me directly
[email protected]

Status: kernel 2.4.0-test10 (no patches added)
Problem: getting dma problems - having to run system with no dma
for disc access - seems to be a bus mastering problem.
Hardware: Aopen AX34Pro mother board, Via chipset with via686a,
Seagate Baracuda ATA66 20GB disc - Latest Bios for motherboard
Sony CDU4811 cdrom

I am willing to test patches.

Snips of logs etc follow

Config
-
# ATA/IDE/MFM/RLL support
#
CONFIG_IDE=y

#
# IDE, ATA and ATAPI Block devices
#
CONFIG_BLK_DEV_IDE=y
# CONFIG_BLK_DEV_HD_IDE is not set
# CONFIG_BLK_DEV_HD is not set
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
# CONFIG_BLK_DEV_IDEDISK_VENDOR is not set
# CONFIG_BLK_DEV_IDEDISK_FUJITSU is not set
# CONFIG_BLK_DEV_IDEDISK_IBM is not set
# CONFIG_BLK_DEV_IDEDISK_MAXTOR is not set
# CONFIG_BLK_DEV_IDEDISK_QUANTUM is not set
# CONFIG_BLK_DEV_IDEDISK_SEAGATE is not set
# CONFIG_BLK_DEV_IDEDISK_WD is not set
# CONFIG_BLK_DEV_COMMERIAL is not set
# CONFIG_BLK_DEV_TIVO is not set
# CONFIG_BLK_DEV_IDECS is not set
CONFIG_BLK_DEV_IDECD=y
# CONFIG_BLK_DEV_IDETAPE is not set
# CONFIG_BLK_DEV_IDEFLOPPY is not set
# CONFIG_BLK_DEV_IDESCSI is not set
# CONFIG_BLK_DEV_CMD640 is not set
# CONFIG_BLK_DEV_CMD640_ENHANCED is not set
# CONFIG_BLK_DEV_ISAPNP is not set
# CONFIG_BLK_DEV_RZ1000 is not set
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_OFFBOARD is not set
CONFIG_IDEDMA_PCI_AUTO=y
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_PCI_WIP is not set
# CONFIG_IDEDMA_NEW_DRIVE_LISTINGS is not set
# CONFIG_BLK_DEV_AEC62XX is not set
# CONFIG_AEC62XX_TUNING is not set
# CONFIG_BLK_DEV_ALI15X3 is not set
# CONFIG_WDC_ALI15X3 is not set
# CONFIG_BLK_DEV_AMD7409 is not set
# CONFIG_AMD7409_OVERRIDE is not set
# CONFIG_BLK_DEV_CMD64X is not set
# CONFIG_BLK_DEV_CY82C693 is not set
# CONFIG_BLK_DEV_CS5530 is not set
# CONFIG_BLK_DEV_HPT34X is not set
# CONFIG_HPT34X_AUTODMA is not set
# CONFIG_BLK_DEV_HPT366 is not set
# CONFIG_BLK_DEV_PIIX is not set
# CONFIG_PIIX_TUNING is not set
# CONFIG_BLK_DEV_NS87415 is not set
# CONFIG_BLK_DEV_OPTI621 is not set
# CONFIG_BLK_DEV_PDC202XX is not set
# CONFIG_PDC202XX_BURST is not set
# CONFIG_BLK_DEV_OSB4 is not set
# CONFIG_BLK_DEV_SIS5513 is not set
# CONFIG_BLK_DEV_SLC90E66 is not set
# CONFIG_BLK_DEV_TRM290 is not set
CONFIG_BLK_DEV_VIA82CXXX=y
# CONFIG_IDE_CHIPSETS is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_IDEDMA_IVB is not set
# CONFIG_DMA_NONPCI is not set
CONFIG_BLK_DEV_IDE_MODES=y

#

Dmesg - warning due to ide0=ata66 in append line of lilo

Uniform Multi-Platform E-IDE driver Revision: 6.31
ide: Assuming 33MHz system bus speed for PIO modes; override
with idebus=xx
VP_IDE: IDE controller on PCI bus 00 dev 39
VP_IDE: chipset revision 16
VP_IDE: VIA vt82c686a IDE UDMA66 controller on pci0:7.1
VP_IDE: ATA-66/100 forced bit set (WARNING)!!
ide0: BM-DMA at 0x6400-0x6407, BIOS settings: hda:DMA,
hdb:pio
ide1: BM-DMA at 0x6408-0x640f, BIOS settings: hdc:DMA,
hdd:pio
hda: ST320420A, ATA DISK drive
hdc: SONY CDU4811, ATAPI CDROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 15
ide1 at 0x170-0x177,0x376 on irq 14
hda: 39851760 sectors (20404 MB) w/2048KiB Cache,
CHS=2480/255/63, UDMA(66)
hdc: ATAPI 48X CD-ROM drive, 120kB Cache, UDMA(33)
Uniform CD-ROM driver Revision: 3.11
Partition check:
hda:hda: timeout waiting for DMA
ide_dmaproc: chipset supported ide_dma_timeout func only: 14
hda: irq timeout: status=0x50 { DriveReady SeekComplete }
hda: timeout waiting for DMA
ide_dmaproc: chipset supported ide_dma_timeout func only: 14
hda: irq timeout: status=0x50 { DriveReady SeekComplete }
hda: timeout waiting for DMA
ide_dmaproc: chipset supported ide_dma_timeout func only: 14
hda: irq timeout: status=0x50 { DriveReady SeekComplete }
hda: timeout waiting for DMA
ide_dmaproc: chipset supported ide_dma_timeout func only: 14
hda: irq timeout: status=0x50 { DriveReady SeekComplete }
hda: DMA disabled
ide0: reset: success
hda1 hda2 hda3 hda4 < hda5 hda6 hda7 >

------
VFS: Disk change detected on device ide1(22,0)
ISO 9660 Extensions: Microsoft Joliet Level 3
hdc: timeout waiting for DMA
ide_dmaproc: chipset supported ide_dma_timeout func only: 14
hdc: irq timeout: status=0x58 { DriveReady SeekComplete
DataRequest }
hdc: timeout waiting for DMA
ide_dmaproc: chipset supported ide_dma_timeout func only: 14
hdc: irq timeout: status=0x51 { DriveReady SeekComplete Error }
hdc: irq timeout: error=0x04
hdc: timeout waiting for DMA
ide_dmaproc: chipset supported ide_dma_timeout func only: 14
hdc: irq timeout: status=0x58 { DriveReady SeekComplete
DataRequest }
ide_dmaproc: chipset supported ide_dma_lostirq func only: 13
hdc: lost interrupt
ATAPI device hdc:
Error: No sense data -- (Sense key=0x00)
No additional sense information -- (asc=0x00, ascq=0x00)
ide_dmaproc: chipset supported ide_dma_lostirq func only: 13
hdc: lost interrupt
ISOFS: changing to secondary root
ide_dmaproc: chipset supported ide_dma_lostirq func only: 13
hdc: lost interrupt
hdc: timeout waiting for DMA
ide_dmaproc: chipset supported ide_dma_timeout func only: 14
hdc: irq timeout: status=0x58 { DriveReady SeekComplete
DataRequest }
hdc: timeout waiting for DMA
ide_dmaproc: chipset supported ide_dma_timeout func only: 14
hdc: irq timeout: status=0x51 { DriveReady SeekComplete Error }
hdc: irq timeout: error=0x04
ide_dmaproc: chipset supported ide_dma_lostirq func only: 13
hdc: lost interrupt
ide_dmaproc: chipset supported ide_dma_lostirq func only: 13
hdc: lost interrupt
hdc: timeout waiting for DMA
ide_dmaproc: chipset supported ide_dma_timeout func only: 14
hdc: irq timeout: status=0x58 { DriveReady SeekComplete
DataRequest }
ide_dmaproc: chipset supported ide_dma_lostirq func only: 13
hdc: lost interrupt
ATAPI device hdc:
Error: No sense data -- (Sense key=0x00)
No additional sense information -- (asc=0x00, ascq=0x00)

Performance

/dev/hda:
Timing buffer-cache reads: 128 MB in 0.69 seconds =185.51
MB/sec
Timing buffered disk reads: 64 MB in 12.01 seconds = 5.33
MB/sec

Thanks in advance
Stephen Carr


Stephen Carr
Computing Officer
Department of Civil and Environmental Engineering
University of Adelaide
Adelaide, South Australia,
Australia 5005
Phone +618 8303-4313
Fax +618 8303-4359
Email [email protected]
-----------------------------------------------------------
This email message is intended only for the addressee(s)
and contains information which may be confidential and/or
copyright. If you are not the intended recipient please
do not read, save, forward, disclose, or copy the contents
of this email. If this email has been sent to you in error,
please notify the sender by reply email and delete this
email and any copies or links to this email completely and
immediately from your system. No representation is made
that this email is free of viruses. Virus scanning is
recommended and is the responsibility of the recipient.


2000-12-01 18:58:11

by Jesus Cea Avion

[permalink] [raw]
Subject: AX64 too (was: Re: Dma problems - Aopen Ax34pro VIA chipset seagate drive)

Please, if you respond, send me a copy to my mailbox, too.



> Status: kernel 2.4.0-test10 (no patches added)
> Problem: getting dma problems - having to run system with no dma
> for disc access - seems to be a bus mastering problem.
> Hardware: Aopen AX34Pro mother board, Via chipset with via686a,
> Seagate Baracuda ATA66 20GB disc - Latest Bios for motherboard
> Sony CDU4811 cdrom

I have a comparable problem with an Aopen AX64 motherboard. Chipset
via686a.

[root@colquide /root]# hdparm -i /dev/hda

/dev/hda:

Model=ST320420A, FwRev=3.21, SerialNo=3CL0LN4H
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0
BuffType=unknown, BuffSize=2048kB, MaxMultSect=16, MultSect=off
CurCHS=16383/16/63, CurSects=-66060037, LBA=yes, LBAsects=39851760
IORDY=on/off, tPIO={min:240,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


Kernel 2.2.17+ReiserFS (no additional patches).

>From time to time, the HD light goes on permanently and the Hard Disk
doesn't respond anymore. Processes run smoothly until they try to access
Hard Disk, since they block waiting the HD response.

I can see the following messages in the console (no hard disk log, since
the HD is not available):

(I'm copying the console using paper and pencil :-)

hda: status timeout: status = 0x80 {Busy}
hda: drive not ready for command
ide0: reset timed-out, status = 0x80
... the same thing ...
end_reques: I/O error, dev 03:01 (hda), sector 3145760
hda: status timeout: status = 0x80 {Busy}
hda: drive not ready for command
ide0: reset timed-out, status = 0x80
... and so on ...


The HD light is ON permanently.

If I reset the machine, the BIOS doesn't recognize the HD. I have to
switch the machine OFF in order to recover.

I can reproduce the problem with DMA and without it, with the
experimental 586 driver and without it too.

It's not a hardware defect since I can reproduce the error in two
different "twin" machines.

The machines runs FINE for hours/days, until this problem occurs. Not a
good deal for a production system (or for debug patches :-( ).

The power management is disabled.

The onboard sound system is disabled.

[root@colquide irc]# cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 8
model name : Pentium III (Coppermine)
stepping : 3
cpu MHz : 733.104
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
sep_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 3
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca
cmov pat pse36 psn mmx fxsr xmm
bogomips : 1461.45


PCI devices found:
Bus 0, device 0, function 0:
Host bridge: VIA Technologies Unknown device (rev 196).
Vendor id=1106. Device id=691.
Medium devsel. Master Capable. No bursts.
Prefetchable 32 bit memory at 0xe0000000 [0xe0000008].
Bus 0, device 1, function 0:
PCI bridge: VIA Technologies VT 82C598 Apollo MVP3 AGP (rev 0).
Medium devsel. Master Capable. No bursts. Min Gnt=12.
Bus 0, device 7, function 0:
ISA bridge: VIA Technologies Unknown device (rev 27).
Vendor id=1106. Device id=686.
Medium devsel. Master Capable. No bursts.
Bus 0, device 7, function 1:
IDE interface: VIA Technologies VT 82C586 Apollo IDE (rev 6).
Medium devsel. Fast back-to-back capable. Master Capable.
Latency=32.
I/O at 0x6400 [0x6401].
Bus 0, device 7, function 2:
USB Controller: VIA Technologies VT 82C586 Apollo USB (rev 14).
Medium devsel. IRQ 10. Master Capable. Latency=32.
I/O at 0x6800 [0x6801].
Bus 0, device 7, function 3:
USB Controller: VIA Technologies VT 82C586 Apollo USB (rev 14).
Medium devsel. IRQ 10. Master Capable. Latency=32.
I/O at 0x6c00 [0x6c01].
Bus 0, device 7, function 4:
Host bridge: VIA Technologies Unknown device (rev 32).
Vendor id=1106. Device id=3057.
Medium devsel. Fast back-to-back capable.
Bus 0, device 11, function 0:
Ethernet controller: 3Com 3C905B 100bTX (rev 48).
Medium devsel. IRQ 5. Master Capable. Latency=32. Min
Gnt=10.Max Lat=10.
I/O at 0x7000 [0x7001].
Non-prefetchable 32 bit memory at 0xea001000 [0xea001000].
Bus 0, device 12, function 0:
Ethernet controller: 3Com Unknown device (rev 116).
Vendor id=10b7. Device id=9200.
Medium devsel. IRQ 11. Master Capable. Latency=32. Min
Gnt=10.Max Lat=10.
I/O at 0x7400 [0x7401].
Non-prefetchable 32 bit memory at 0xea000000 [0xea000000].
Bus 1, device 0, function 0:
VGA compatible controller: ATI Mach64 GB (rev 92).
Medium devsel. Fast back-to-back capable. IRQ 11. Master
Capable. Latency=32. Min Gnt=8.
Non-prefetchable 32 bit memory at 0xe4000000 [0xe4000000].
I/O at 0xe000 [0xe001].
Non-prefetchable 32 bit memory at 0xe6000000 [0xe6000000].


> I am willing to test patches.

I could, but the problem is ocurring only over long time periods
(hours/days without any problem).

> Performance
>
> /dev/hda:
> Timing buffer-cache reads: 128 MB in 0.69 seconds =185.51
> MB/sec
> Timing buffered disk reads: 64 MB in 12.01 seconds = 5.33
> MB/sec

I get 3.5MB/s using 16 bits and 4.7MB/s using 32 bits. (hdparm -c
/dev/hda)

Current config:

#
# Block devices
#
CONFIG_BLK_DEV_FD=m
CONFIG_BLK_DEV_IDE=y
# CONFIG_BLK_DEV_HD_IDE is not set
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_BLK_DEV_IDECD=m
# CONFIG_BLK_DEV_IDETAPE is not set
# CONFIG_BLK_DEV_IDEFLOPPY is not set
# CONFIG_BLK_DEV_IDESCSI is not set
CONFIG_BLK_DEV_CMD640=y
# CONFIG_BLK_DEV_CMD640_ENHANCED is not set
CONFIG_BLK_DEV_RZ1000=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_BLK_DEV_IDEDMA=y
# CONFIG_BLK_DEV_OFFBOARD is not set
CONFIG_IDEDMA_AUTO=y
# CONFIG_BLK_DEV_OPTI621 is not set
# CONFIG_BLK_DEV_TRM290 is not set
# CONFIG_BLK_DEV_NS87415 is not set
CONFIG_BLK_DEV_VIA82C586=y
# CONFIG_BLK_DEV_CMD646 is not set
# CONFIG_BLK_DEV_CS5530 is not set
CONFIG_IDE_CHIPSETS=y
# CONFIG_BLK_DEV_4DRIVES is not set
# CONFIG_BLK_DEV_ALI14XX is not set
# CONFIG_BLK_DEV_DTC2278 is not set
# CONFIG_BLK_DEV_HT6560B is not set
# CONFIG_BLK_DEV_QD6580 is not set
# CONFIG_BLK_DEV_UMC8672 is not set
# CONFIG_BLK_DEV_PDC4030 is not set
CONFIG_BLK_DEV_LOOP=m
CONFIG_BLK_DEV_NBD=m
CONFIG_BLK_DEV_MD=y
CONFIG_MD_LINEAR=m
CONFIG_MD_STRIPED=m
CONFIG_MD_MIRRORING=m
CONFIG_MD_RAID5=m
CONFIG_BLK_DEV_RAM=y
CONFIG_BLK_DEV_RAM_SIZE=4096
CONFIG_BLK_DEV_INITRD=y
CONFIG_BLK_DEV_XD=m
# CONFIG_BLK_DEV_DAC960 is not set
CONFIG_PARIDE_PARPORT=m
# CONFIG_PARIDE is not set
# CONFIG_BLK_CPQ_DA is not set
# CONFIG_BLK_DEV_HD is not set

--
Jesus Cea Avion _/_/ _/_/_/ _/_/_/
[email protected] http://www.argo.es/~jcea/ _/_/ _/_/ _/_/ _/_/ _/_/
_/_/ _/_/ _/_/_/_/_/
PGP Key Available at KeyServ _/_/ _/_/ _/_/ _/_/ _/_/
"Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/
"My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/
"El amor es poner tu felicidad en la felicidad de otro" - Leibniz

2000-12-01 19:32:16

by Mike Dresser

[permalink] [raw]
Subject: Re: AX64 too (was: Re: Dma problems - Aopen Ax34pro VIA chipset seagate drive)

I've got a motherboard with the same Via686a chipset, and i've never had a
problem with DMA when it's enabled.
Using a pair of 20 gig IBM drives on the secondary, and a 3.2 quantum primary,
17.2 gig maxtor. All using DMA, all work. Using ultra/33, I wasn't even
aware this chipset is ultra/66 capable, until last night. Going to acquire an
ultra/66 cable, and test udma/66 mode tonight. And find out what bios setting
makes the thing not _allow_ dma at all.

System used to be flaky with networking, did some memory timing adjustments,
seems to be ok now.
Celeron 300@450, 32 meg sdram.

/dev/hdc:

Model=IBM-DJNA-352030, FwRev=J58OA30K, SerialNo=GQ0GQF07566
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=34
BuffType=DualPortCache, BuffSize=1966kB, MaxMultSect=16, MultSect=off
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=39876480
IORDY=on/off, tPIO={min:240,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

/dev/hdc:
Timing buffer-cache reads: 128 MB in 1.48 seconds = 86.49 MB/sec
Timing buffered disk reads: 64 MB in 4.33 seconds = 14.78 MB/sec

Not too bad for an old 20 gig. Same speeds whether i have -c3 -u1 or not.

Turn DMA off, it gets slow though

/dev/hdc:
Timing buffer-cache reads: 128 MB in 1.50 seconds = 85.33 MB/sec
Timing buffered disk reads: 64 MB in 14.90 seconds = 4.30 MB/sec

Jesus Cea Avion wrote:

> Please, if you respond, send me a copy to my mailbox, too.
>
> > Status: kernel 2.4.0-test10 (no patches added)
> > Problem: getting dma problems - having to run system with no dma
> > for disc access - seems to be a bus mastering problem.
> > Hardware: Aopen AX34Pro mother board, Via chipset with via686a,
> > Seagate Baracuda ATA66 20GB disc - Latest Bios for motherboard
> > Sony CDU4811 cdrom
>
> I have a comparable problem with an Aopen AX64 motherboard. Chipset
> via686a.