[1.] One line summary of the problem: IDE UDMA read hangs system hard (VIA 586a) [2.] Full description of the problem/report: IDE UDMA transfer from Maxtor UDMA66 drive (MB is only UDMA33) hangs machine hard. Funny thing is that writing with "dd if=/dev/zero of=/dev/hdb" don't hang the system but reading from the drive does. Turning DMA off with hdparm cures the problem but turns performance very slow. I also tried putting Maxtor as secondary master and CDRW as slave, but same hang happened. Earlier this year I used without problem (DMA worked with both drives) same motherboard and master drive but slave Maxtor was newer 40GB D540x UDMA133 model. Kernel was newest available 2.4.20(pre) at the time. [3.] Keywords (i.e., modules, networking, kernel): IDE, VIA, DMA, hang, Maxtor [4.] Kernel version (from /proc/version): Linux version 2.4.22-pre5 (root) (gcc version 3.3.1 20030626 (Debian prerelease)) (same problem was with vanilla 2.4.21 kernel too) (I also tried with GCC-3.2.3, same problem too) [7.] Environment [7.2.] Processor information (from /proc/cpuinfo): processor : 0 vendor_id : AuthenticAMD cpu family : 5 model : 7 model name : AMD-K6tm w/ multimedia extensions stepping : 0 cpu MHz : 338.284 cache size : 64 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr mce cx8 mmx bogomips : 675.02 [7.3.] Module information (from /proc/modules): nfs 65660 1 (autoclean) parport_pc 21448 1 (autoclean) lp 6272 0 (autoclean) parport 23880 1 (autoclean) [parport_pc lp] tulip 38304 1 (autoclean) crc32 2848 0 (autoclean) [tulip] ad1816 9316 0 sound 54728 0 [ad1816] soundcore 3428 4 [sound] [7.4.] Loaded driver and hardware information (/proc/ioports, /proc/iomem) 0000-001f : dma1 0020-003f : pic1 0040-005f : timer 0060-006f : keyboard 0070-007f : rtc 0080-008f : dma page reg 00a0-00bf : pic2 00c0-00df : dma2 00f0-00ff : fpu 0170-0177 : ide1 01f0-01f7 : ide0 0213-0213 : isapnp read 02f8-02ff : serial(auto) 0376-0376 : ide1 0378-037a : parport0 03c0-03df : vga+ 03f6-03f6 : ide0 03f8-03ff : serial(auto) 0530-053f : AD1816 Sound 0778-077a : parport0 0a79-0a79 : isapnp write 0cf8-0cff : PCI conf1 e000-e00f : VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE e000-e007 : ide0 e008-e00f : ide1 e800-e8ff : 3Dfx Interactive, Inc. Voodoo Banshee ec00-ecff : Linksys Network Everywhere Fast Ethernet 10/100 model NC100 ec00-ecff : tulip 00000000-0009fbff : System RAM 0009fc00-0009ffff : reserved 000a0000-000bffff : Video RAM area 000c0000-000c7fff : Video ROM 000f0000-000fffff : System ROM 00100000-03f7ffff : System RAM 00100000-00254ec4 : Kernel code 00254ec5-002a849f : Kernel data d0000000-d1ffffff : 3Dfx Interactive, Inc. Voodoo Banshee d2000000-d3ffffff : 3Dfx Interactive, Inc. Voodoo Banshee d5000000-d50003ff : Linksys Network Everywhere Fast Ethernet 10/100 model NC100 d5000000-d50003ff : tulip [7.5.] PCI information ('lspci -vvv' as root) 00:00.0 Host bridge: VIA Technologies, Inc. VT82C585VP [Apollo VP1/VPX] (rev 23) Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap- 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- SERR- TAbort- SERR- TAbort- SERR- TAbort- SERR- [disabled] [size=32K] Capabilities: [60] Power Management version 1 Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-) Status: D0 PME-Enable- DSel=0 DScale=0 PME- 00:09.0 Ethernet controller: Linksys Network Everywhere Fast Ethernet 10/100 model NC100 (rev 11) Subsystem: Accton Technology Corporation: Unknown device 1216 Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- SERR- [disabled] [size=128K] Capabilities: [c0] Power Management version 2 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+) Status: D0 PME-Enable- DSel=0 DScale=0 PME- [7.7.] Other information that might be relevant to the problem (please look in /proc and include all information that you think to be relevant): /proc/ide/via ----------VIA BusMastering IDE Configuration---------------- Driver Version: 3.37 South Bridge: VIA vt82c586a Revision: ISA 0x27 IDE 0x6 Highest DMA rate: UDMA33 BM-DMA base: 0xe000 PCI clock: 33.3MHz Master Read Cycle IRDY: 1ws Master Write Cycle IRDY: 1ws BM IDE Status Register Read Retry: yes Max DRDY Pulse Width: No limit -----------------------Primary IDE-------Secondary IDE------ Read DMA FIFO flush: yes yes End Sector FIFO flush: no no Prefetch Buffer: yes yes Post Write Buffer: yes no Enabled: yes yes Simplex only: no no Cable Type: 40w 40w -------------------drive0----drive1----drive2----drive3----- Transfer Mode: DMA PIO DMA DMA Address Setup: 30ns 30ns 30ns 120ns Cmd Active: 90ns 90ns 90ns 90ns Cmd Recovery: 30ns 30ns 30ns 30ns Data Active: 90ns 90ns 90ns 330ns Data Recovery: 30ns 30ns 30ns 270ns Cycle Time: 120ns 120ns 120ns 600ns Transfer Rate: 16.6MB/s 16.6MB/s 16.6MB/s 3.3MB/s