[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

dma timeout



 Hi, all.

 Last year, I asked here why my new hdd
doesn't boot up with dma mode.
In that time, I hardly knew about a hdd,
so, though I received many advices by the list,
I couldn't put it into practice.

 With alot of reading and searching,
I think now I know better than me of last year,
Let me ask about the same problem.

My story is this,

I bought a hdd, HDS722580VLAT20, HITACHI Deskstar 82.3GB,
and attached it to my box as primary slave(or hdb).
My mobo(Asus P2B)'s bios so old that didn't recognize it as it is.
(the old bios said my new hdd is only 32G)

With new beta bios(1014.003) installed, 
everything went fine till I boot linux(2.4.22, debian testing).
my *old hdd* got up with dma mode. (new one boot up with dma)

This is the dmesg at that very moment.

--------------------------------------------
PIIX4: IDE controller at PCI slot 00:04.1
PIIX4: chipset revision 1
PIIX4: not 100% native mode: will probe irqs later
    ide0: BM-DMA at 0xd800-0xd807, BIOS settings: hda:DMA, hdb:DMA
    ide1: BM-DMA at 0xd808-0xd80f, BIOS settings: hdc:DMA, hdd:pio
hda: QUANTUM FIREBALL EX12.7A, ATA DISK drive
hdb: HDS722580VLAT20, ATA DISK drive
blk: queue c04102a0, I/O limit 4095Mb (mask 0xffffffff)
blk: queue c04103e8, I/O limit 4095Mb (mask 0xffffffff)
hdc: CD-950E/TKU, ATAPI CD/DVD-ROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
hda: attached ide-disk driver.
hda: 24901632 sectors (12750 MB) w/418KiB Cache, CHS=1550/255/63, UDMA(33)
hdb: attached ide-disk driver.
hdb: 160836480 sectors (82348 MB) w/1794KiB Cache, CHS=10011/255/63, UDMA(33)
hdc: attached ide-cdrom driver.
hdc: ATAPI 52X CD-ROM drive, 128kB Cache, UDMA(33)
Uniform CD-ROM driver Revision: 3.12
Partition check:
 hda:<4>hda: dma_timer_expiry: dma status == 0x61
hda: error waiting for DMA
hda: dma timeout retry: status=0x58 { DriveReady SeekComplete DataRequest }

blk: queue c04102a0, I/O limit 4095Mb (mask 0xffffffff)
 hda1 hda2 hda3 <<4>hda: dma_timer_expiry: dma status == 0x61
hda: error waiting for DMA
hda: dma timeout retry: status=0x5a { DriveReady SeekComplete DataRequest Index }

 hda5<4>hda: dma_timer_expiry: dma status == 0x61
hda: error waiting for DMA
hda: dma timeout retry: status=0x58 { DriveReady SeekComplete DataRequest }

 hda6<4>hda: dma_timer_expiry: dma status == 0x61
hda: error waiting for DMA
hda: dma timeout retry: status=0x58 { DriveReady SeekComplete DataRequest }
 hda7 hda8 hda9 hda10 hda11 >
 hdb: hdb1 < hdb5 >
SCSI subsystem driver Revision: 1.00
kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2
Soundblaster audio driver Copyright (C) by Hannu Savolainen 1993-1996
sb: No ISAPnP cards found, trying standard ones...
sb: I/O, IRQ, and DMA are mandatory
YM3812 and OPL-3 driver Copyright (C) by Hannu Savolainen, Rob Hooft 1993-1996
es1371: version v0.32 time 12:00:53 Nov 28 2003
Linux Kernel Card Services 3.1.22
  options:  [pci] [cardbus] [pm]
usb.c: registered new driver hub
host/uhci.c: USB Universal Host Controller Interface driver v1.1
PCI: Found IRQ 9 for device 00:04.2
PCI: Sharing IRQ 9 with 00:09.0

--------------------------------------------

mobo:Asus P2B
hda: QUANTUM FIREBALL EX12.7A
hdb: HDS722580VLAT20(HITACHI Deskstar)
kernel: 2.4.22(debian testing, but now I running unstalbe)

# lspci -v
00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 03)
        Flags: bus master, medium devsel, latency 64
        Memory at e4000000 (32-bit, prefetchable) [size=64M]
        Capabilities: [a0] AGP version 1.0

00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 03) (prog-if 00 [Normal decode])
        Flags: bus master, 66Mhz, medium devsel, latency 64
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
        Memory behind bridge: e1800000-e2efffff
        Prefetchable memory behind bridge: e2f00000-e3ffffff

00:04.0 ISA bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 02)
        Flags: bus master, medium devsel, latency 0
root:~# lspci -v
00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 03)
        Flags: bus master, medium devsel, latency 64
        Memory at e4000000 (32-bit, prefetchable) [size=64M]
        Capabilities: [a0] AGP version 1.0

00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 03) (prog-if 00 [Normal decode])
        Flags: bus master, 66Mhz, medium devsel, latency 64
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=64
        Memory behind bridge: e1800000-e2efffff
        Prefetchable memory behind bridge: e2f00000-e3ffffff
00:04.0 ISA bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 02)
        Flags: bus master, medium devsel, latency 0

00:04.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01) (prog-if 80 [Master])
        Flags: bus master, medium devsel, latency 32
        I/O ports at d800 [size=16]

00:04.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB (rev 01) (prog-if 00 [UHCI])
        Flags: bus master, medium devsel, latency 32, IRQ 9
        I/O ports at d400 [size=32]

00:04.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 02)
        Flags: medium devsel, IRQ 9

00:09.0 Serial controller: Rockwell International HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem (rev 01) (prog-if 00 [8250])
        Subsystem: Rockwell International HCF 56k Data/Fax/Voice/Spkp (w/Handset) Modem
        Flags: bus master, medium devsel, latency 32, IRQ 9
        Memory at e1000000 (32-bit, non-prefetchable) [size=64K]
        Capabilities: [40] Power Management version 1

00:0a.0 Multimedia audio controller: Yamaha Corporation YMF-724F [DS-1 Audio Controller] (rev 03)
        Subsystem: Yamaha Corporation DS-XG PCI Audio CODEC
        Flags: bus master, medium devsel, latency 32, IRQ 5
        Memory at e0800000 (32-bit, non-prefetchable) [size=32K]
        Capabilities: [50] Power Management version 1

00:0b.0 SCSI storage controller: Adaptec AHA-7850 (rev 01)
        Flags: bus master, medium devsel, latency 32, IRQ 10
        I/O ports at d000 [size=256]
        Memory at e0000000 (32-bit, non-prefetchable) [size=4K]

00:0c.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8029(AS)
        Subsystem: Allied Telesyn International: Unknown device a104
        Flags: medium devsel, IRQ 11
        I/O ports at b800 [size=32]

01:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA G200 AGP (rev 01) (prog-if 00 [VGA])
        Subsystem: Matrox Graphics, Inc. Millennium G200 AGP
        Flags: bus master, medium devsel, latency 64, IRQ 11
        Memory at e3000000 (32-bit, prefetchable) [size=16M]
        Memory at e2000000 (32-bit, non-prefetchable) [size=16K]
        Memory at e1800000 (32-bit, non-prefetchable) [size=8M]
        Expansion ROM at e2ff0000 [disabled] [size=64K]
        Capabilities: [dc] Power Management version 1
        Capabilities: [f0] AGP version 1.0


$ grep -i ide config-2.4.22 |grep '^[^#]'
CONFIG_IDE=y
CONFIG_BLK_DEV_IDE=y
CONFIG_BLK_DEV_IDEDISK=y
CONFIG_IDEDISK_MULTI_MODE=y
CONFIG_BLK_DEV_IDECD=y
CONFIG_BLK_DEV_IDEPCI=y
CONFIG_IDEPCI_SHARE_IRQ=y
CONFIG_BLK_DEV_IDEDMA_PCI=y
CONFIG_IDEDMA_PCI_AUTO=y
CONFIG_BLK_DEV_IDEDMA=y
CONFIG_IDEDMA_AUTO=y
CONFIG_BLK_DEV_IDE_MODES=y

this is what I've done(and found).

1. exchanging ide cable with secandary's one(no effect).
2. hdparm -d1 /dev/hda
# hdparm -d1 /dev/hda

/dev/hda:
 setting using_dma to 1 (on)
 using_dma    =  1 (on)  # (fine!)

# hdparm -t /dev/hda

/dev/hda:
 Timing buffered disk reads:    2 MB in 92.15 seconds =  22.22 kB/sec
(too slow!!)

# hdparm -v /dev/hda

/dev/hdb:
 multcount    = 16 (on)
 IO_support   =  0 (default 16-bit)
 unmaskirq    =  0 (off)
 using_dma    =  0 (off) <- automatically
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    =  8 (on)
 geometry     = 1550/255/63, sectors = 24901632, start = 0

# tail -f /var/log/messages
Jan 11 10:51:25 kamome kernel: hdb: dma_timer_expiry: dma status == 0x61
Jan 11 10:51:35 kamome kernel: hdb: dma timeout retry: status=0x58 { DriveReady SeekComplete DataRequest }
Jan 11 10:51:35 kamome kernel: 
Jan 11 10:51:55 kamome kernel: hdb: dma_timer_expiry: dma status == 0x61
Jan 11 10:52:05 kamome kernel: hdb: dma timeout retry: status=0x58 { DriveReady SeekComplete DataRequest }
Jan 11 10:52:05 kamome kernel: 
Jan 11 10:52:25 kamome kernel: hdb: dma_timer_expiry: dma status == 0x61
Jan 11 10:52:35 kamome kernel: hdb: dma timeout retry: status=0x58 { DriveReady SeekComplete DataRequest }
Jan 11 10:52:35 kamome kernel: 


When I had only one hdd installed, 
my box boot smoothly.

this is the evidence.

--------------------------------------------
Kernel command line: BOOT_IMAGE=Linux-2.4.22 ro root=307 apm=on apm=power-off
Local APIC disabled by BIOS -- reenabling.
Found and enabled local APIC!
Initializing CPU#0
Detected 334.099 MHz processor.
Console: colour VGA+ 80x25
Calibrating delay loop... 666.82 BogoMIPS
Memory: 190816k/196596k available (1908k kernel code, 5392k reserved, 754k data, 136k init, 0k highmem)
Dentry cache hash table entries: 32768 (order: 6, 262144 bytes)
Inode cache hash table entries: 16384 (order: 5, 131072 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer cache hash table entries: 8192 (order: 3, 32768 bytes)
Page-cache hash table entries: 65536 (order: 6, 262144 bytes)
CPU: L1 I cache: 16K, L1 D cache: 16K
CPU: L2 cache: 128K
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#0.
CPU:     After generic, caps: 0183fbff 00000000 00000000 00000000
CPU:             Common caps: 0183fbff 00000000 00000000 00000000
Enabling fast FPU save and restore... done.
Checking 'hlt' instruction... OK.
POSIX conformance testing by UNIFIX
CPU: L1 I cache: 16K, L1 D cache: 16K
CPU: L2 cache: 128K
Intel machine check reporting enabled on CPU#0.
CPU:     After generic, caps: 0183fbff 00000000 00000000 00000000
CPU:             Common caps: 0183fbff 00000000 00000000 00000000
CPU0: Intel Celeron (Mendocino) stepping 05
per-CPU timeslice cutoff: 365.52 usecs.
SMP motherboard not detected.
enabled ExtINT on CPU#0
ESR value before enabling vector: 00000000
ESR value after enabling vector: 00000000
Using local APIC timer interrupts.
calibrating APIC timer ...
..... CPU clock speed is 334.1018 MHz.
..... host bus clock speed is 66.8203 MHz.
cpu: 0, clocks: 668203, slice: 334101
CPU0<T0:668192,T1:334080,D:11,S:334101,C:668203>
Waiting on wait_init_idle (map = 0x0)
All processors have done init_idle
PCI: PCI BIOS revision 2.10 entry at 0xf0720, last bus=1
PCI: Using configuration type 1
PCI: Probing PCI hardware
PCI: Probing PCI hardware (bus 00)
PCI: Using IRQ router PIIX [8086/7110] at 00:04.0
Limiting direct PCI/PCI transfers.
isapnp: Scanning for PnP cards...
isapnp: No Plug & Play device found
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
apm: BIOS version 1.2 Flags 0x03 (Driver version 1.16)
Starting kswapd
Installing knfsd (copyright (C) 1996 okir@monad.swb.de).
parport0: PC-style at 0x378 (0x778) [PCSPP(,...)]
parport0: irq 7 detected
pty: 256 Unix98 ptys configured
Serial driver version 5.05c (2001-07-08) with MANY_PORTS SHARE_IRQ SERIAL_PCI ISAPNP enabled
ttyS00 at 0x03f8 (irq = 4) is a 16550A
ttyS01 at 0x02f8 (irq = 3) is a 16550A
PCI: Found IRQ 9 for device 00:09.0
PCI: Sharing IRQ 9 with 00:04.2
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
Linux agpgart interface v0.99 (c) Jeff Hartmann
agpgart: Maximum main memory to use for agp memory: 149M
agpgart: Detected Intel 440BX chipset
agpgart: AGP aperture is 64M @ 0xe4000000
[drm] Initialized tdfx 1.0.0 20010216 on minor 0
[drm] AGP 0.99 on Intel 440BX @ 0xe4000000 64MB
[drm] Initialized radeon 1.1.1 20010405 on minor 1
[drm] AGP 0.99 on Intel 440BX @ 0xe4000000 64MB
[drm] Initialized i810 1.2.0 20010920 on minor 2
Uniform Multi-Platform E-IDE driver Revision: 7.00beta4-2.4
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
PIIX4: IDE controller at PCI slot 00:04.1
PIIX4: chipset revision 1
PIIX4: not 100% native mode: will probe irqs later
    ide0: BM-DMA at 0xd800-0xd807, BIOS settings: hda:DMA, hdb:pio
    ide1: BM-DMA at 0xd808-0xd80f, BIOS settings: hdc:DMA, hdd:pio
hda: QUANTUM FIREBALL EX12.7A, ATA DISK drive
blk: queue c040c2a0, I/O limit 4095Mb (mask 0xffffffff)
hdc: CD-950E/TKU, ATAPI CD/DVD-ROM drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
ide1 at 0x170-0x177,0x376 on irq 15
hda: attached ide-disk driver.
hda: 24901632 sectors (12750 MB) w/418KiB Cache, CHS=1550/255/63, UDMA(33)
hdc: attached ide-cdrom driver.
hdc: ATAPI 52X CD-ROM drive, 128kB Cache, UDMA(33)
Uniform CD-ROM driver Revision: 3.12
Partition check:
 hda: hda1 hda2 hda3 < hda5 hda6 hda7 hda8 hda9 hda10 hda11 >
SCSI subsystem driver Revision: 1.00
kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2
Soundblaster audio driver Copyright (C) by Hannu Savolainen 1993-1996
sb: No ISAPnP cards found, trying standard ones...
sb: I/O, IRQ, and DMA are mandatory
YM3812 and OPL-3 driver Copyright (C) by Hannu Savolainen, Rob Hooft 1993-1996
es1371: version v0.32 time 20:54:21 Oct 16 2003
Linux Kernel Card Services 3.1.22
  options:  [pci] [cardbus] [pm]
usb.c: registered new driver hub
host/uhci.c: USB Universal Host Controller Interface driver v1.1
PCI: Found IRQ 9 for device 00:04.2
PCI: Sharing IRQ 9 with 00:09.0
host/uhci.c: USB UHCI at I/O 0xd400, IRQ 9
usb.c: new USB bus registered, assigned bus number 1
hub.c: USB hub found
hub.c: 2 ports detected
usb.c: registered new driver usblp
--------------------------------------------

Help me out this mess, please.

TIA

Akira



Reply to: