Bug 2477 - IDE DMA problems with Intel i855PM (centrino)
Summary: IDE DMA problems with Intel i855PM (centrino)
Status: REJECTED INSUFFICIENT_DATA
Alias: None
Product: IO/Storage
Classification: Unclassified
Component: IDE (show other bugs)
Hardware: i386 Linux
: P2 normal
Assignee: Bartlomiej Zolnierkiewicz
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-04-08 14:45 UTC by Steffen Hein
Modified: 2007-10-28 15:24 UTC (History)
4 users (show)

See Also:
Kernel Version: Kernel 2.6 series / still happens with 2.6.5
Subsystem:
Regression: ---
Bisected commit-id:


Attachments

Description Steffen Hein 2004-04-08 14:45:05 UTC
Distribution: Debian Sarge 
Hardware Environment: HP nx7000 notebook (Centrino-based) 
Software Environment: Custom kernels compiled from vanilla sources (no 
patches), chipset uses the piix-driver. 
 
Problem Description: 
 
I get errors about DMA: 
Apr  6 22:57:15 nx7000 kernel: hda: dma_timer_expiry: dma status == 0x21 
Apr  6 22:57:25 nx7000 kernel: hda: DMA timeout error 
Apr  6 22:57:25 nx7000 kernel: hda: dma timeout error: status=0xd0 { Busy } 
Apr  6 22:57:25 nx7000 kernel: 
Apr  6 22:57:25 nx7000 kernel: hda: DMA disabled 
Apr  6 22:57:25 nx7000 kernel: ide0: reset: success 
Apr  6 23:04:08 nx7000 kernel: hda: dma_timer_expiry: dma status == 0x21 
Apr  6 23:04:18 nx7000 kernel: hda: DMA timeout error 
Apr  6 23:04:18 nx7000 kernel: hda: dma timeout error: status=0xd0 { Busy } 
Apr  6 23:04:18 nx7000 kernel: 
Apr  6 23:04:18 nx7000 kernel: hda: DMA disabled 
Apr  6 23:04:18 nx7000 kernel: ide0: reset: success 
Apr  6 23:12:57 nx7000 kernel: hda: dma_timer_expiry: dma status == 0x21 
Apr  6 23:13:07 nx7000 kernel: hda: DMA timeout error 
Apr  6 23:13:07 nx7000 kernel: hda: dma timeout error: status=0xd0 { Busy } 
Apr  6 23:13:07 nx7000 kernel: 
Apr  6 23:13:07 nx7000 kernel: hda: DMA disabled 
Apr  6 23:13:07 nx7000 kernel: ide0: reset: success 
. 
. 
. 
 
Steps to reproduce: 
Always happens under heavy I/O, with the hard-drive as well as the CD drive. 
If you rip a CD for example, DMA gets disabled for the CD drive after some 
time. DMA doesn't get disabled on the hard-drive as it seems, but I also get 
errors there. The errors above were created when I copied large files from a 
nfs-filesystem. 
 
Here is the kernel output from the driver initialization: 
Apr  6 22:49:14 nx7000 kernel: ICH4: IDE controller at PCI slot 0000:00:1f.1 
Apr  6 22:49:14 nx7000 kernel: PCI: Enabling device 0000:00:1f.1 (0005 -> 
0007) 
Apr  6 22:49:14 nx7000 kernel: ICH4: chipset revision 1 
Apr  6 22:49:14 nx7000 kernel: ICH4: not 100%% native mode: will probe irqs 
later 
Apr  6 22:49:14 nx7000 kernel:     ide0: BM-DMA at 0x4c40-0x4c47, BIOS 
settings: hda:DMA, hdb:pio 
Apr  6 22:49:14 nx7000 kernel:     ide1: BM-DMA at 0x4c48-0x4c4f, BIOS 
settings: hdc:DMA, hdd:pio 
Apr  6 22:49:14 nx7000 kernel: hda: IC25N040ATMR04-0, ATA DISK drive 
Apr  6 22:49:14 nx7000 kernel: ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 
Apr  6 22:49:14 nx7000 kernel: hdc: DW-224E, ATAPI CD/DVD-ROM drive 
Apr  6 22:49:14 nx7000 kernel: ide1 at 0x170-0x177,0x376 on irq 15 
Apr  6 22:49:14 nx7000 kernel: hda: max request size: 1024KiB 
Apr  6 22:49:14 nx7000 kernel: hda: 78140160 sectors (40007 MB) w/1740KiB 
Cache, CHS=16383/255/63, UDMA(100) 
Apr  6 22:49:14 nx7000 kernel:  /dev/ide/host0/bus0/target0/lun0: p1 p2 < p5 
p6 p7 > 
Apr  6 22:49:14 nx7000 kernel: hdc: ATAPI 24X DVD-ROM CD-R/RW CD-MR drive, 
1658kB Cache, DMA 
Apr  6 22:49:14 nx7000 kernel: Uniform CD-ROM driver Revision: 3.20 
. 
. 
. 
 
lspci says: 
0000:00:1f.1 IDE interface: Intel Corp. 82801DBM (ICH4) Ultra ATA Storage 
Controller (rev 01)
Comment 1 Lorenzo Martignoni 2004-09-06 05:20:22 UTC
I've got the same problem with a different Laptop but with the same chipset i855
(centrino)

lspci output:
0000:00:1f.1 IDE interface: Intel Corp. 82801DBM (ICH4) Ultra ATA Storage
Controller (rev 03)
Comment 2 Adrian Bunk 2005-07-31 03:03:10 UTC
Is this problem still present in kernel 2.6.13-rc4?
Comment 3 Dominik Brodowski 2005-09-06 12:34:56 UTC
My personal experience is that this bug happens less often now, but I saw it
quite recently:

Sep  4 19:32:32 [kernel] hda: dma_timer_expiry: dma status == 0x21
Sep  4 19:32:42 [kernel] hda: DMA timeout error
Sep  4 19:32:42 [kernel] ide0: reset: success
Sep  4 19:57:55 [kernel] hda: dma_timer_expiry: dma status == 0x21
Sep  4 19:58:06 [kernel] hda: DMA timeout error

This happened on a Linux version 2.6.13-pcmcia (brodo@sternenlicht) (gcc-Version
3.3.5-20050130 (Gentoo Hardened Linux 3.3.5.20050130-r1, ssp-3
.3.5.20050130-1, pie-8.7.7.1)) #1 Mon Aug 29 11:38:03 CEST 2005 (2.6.13-vanilla
with a few PCMCIA bugfixes already in -mm).
Comment 4 Dominik Brodowski 2006-01-11 02:36:54 UTC
Still present in 2.6.15-git-as-of-yesterday:
[4295276.301000] hda: dma_timer_expiry: dma status == 0x21
[4295286.301000] hda: DMA timeout error
[4295286.301000] hda: dma timeout error: status=0xd0 { Busy }
[4295286.301000] ide: failed opcode was: unknown
[4295286.301000] hda: DMA disabled
[4295286.351000] ide0: reset: success
Comment 5 Natalie Protasevich 2007-09-05 23:31:04 UTC
Does the problem exist with recent kernels? 
Thanks.
Comment 6 Dominik Brodowski 2007-10-28 06:30:39 UTC
Unfortunately, can't test this any more as my notebook is broken. Should we set this bug to REJECTED - INSUFFICIENT DATA?
Comment 7 Bartlomiej Zolnierkiewicz 2007-10-28 15:24:23 UTC
I guess so...

Thanks for update on this anyway.

Note You need to log in before you can comment on or make changes to this bug.