From owner-freebsd-current@FreeBSD.ORG Mon Sep 29 10:08:33 2003 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 18CD316A4B3; Mon, 29 Sep 2003 10:08:33 -0700 (PDT) Received: from fasterix.frmug.org (fasterix.frmug.org [137.194.36.1]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1644044015; Mon, 29 Sep 2003 10:08:28 -0700 (PDT) (envelope-from pb@fasterix.frmug.org) Received: from fasterix.frmug.org (localhost [127.0.0.1]) by fasterix.frmug.org (8.12.10/8.12.9) with ESMTP id h8TH8PKd014910 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Mon, 29 Sep 2003 19:08:26 +0200 (CEST) (envelope-from pb@fasterix.frmug.org) Received: (from pb@localhost) by fasterix.frmug.org (8.12.10/8.12.9/Submit) id h8TH8P3r014909; Mon, 29 Sep 2003 19:08:25 +0200 (CEST) (envelope-from pb) Date: Mon, 29 Sep 2003 19:08:25 +0200 From: Pierre Beyssac To: freebsd-current@freebsd.org Message-ID: <20030929170823.GA14806@fasterix.frmug.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="envbJBWh7q8WU6mo" Content-Disposition: inline User-Agent: Mutt/1.4.1i X-message-flag: Warning! Use of Microsoft Outlook is dangerous and makes your system susceptible to worms and viruses Subject: ATAng: DMA timeout, ICRC errors, ... X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Sep 2003 17:08:33 -0000 --envbJBWh7q8WU6mo Content-Type: text/plain; charset=us-ascii Content-Disposition: inline I've discovered several problems on my system with the ATAng driver. Most of these seem related to one particular disk drive, but the disk used to work fine with the older driver, so I assume the fault lies with the new driver. 1) under heavy I/O, frequent occurences of "ad0: TIMEOUT - WRITE_DMA retrying". Sometimes READ_DMA instead. The IDE configuration: ata0 -> 80-pin cable, one ATA100 capable 180Gb hard disk drive ata1 -> 40-pin cable, a DVD reader and a DVD burner. See dmesg.1, attached. This is the configuration where I get "TIMEOUT - WRITE_DMA" on ad0. 2) I tried to add another (older) IDE drive which I put in the following (non optimal) configuration: ata0 -> 80-pin cable, 180Gb hard disk, DVD burner ata1 -> 40-pin cable, 80Gb hard disk, DVD reader The driver correctly disables the ATA66 mode on ata0, given that the DVD burner is not ATA66-compliant. But no such message on ata1, and I get many ICRC errors when accessing ad1, making ad1 totally unusable. See dmesg.2 attached. 3) both disk drives on ata0, both DVD drives on ata1: ad0 (identified as ATA-6) is usable but thrashes on heavy I/O (DMA problems when reading a DV file with fwcontrol(8)). Same problem as 1) above, except the messages I get about timeouts are related to firewire -- but I'm quite certain the problem is not firewire-related as reading from firewire works perfectly fine when the file is stored on the other drive. Under heavy disk access (without firewire involved) I also get bunches of: ad0: WARNING - READ_DMA UDMA ICRC error (retrying request) ad0: WARNING - READ_DMA UDMA ICRC error (retrying request) ad0: WARNING - READ_DMA UDMA ICRC error (retrying request) ad0: WARNING - READ_DMA UDMA ICRC error (retrying request) Reading from/writing to ad1 (identified as ATA-5) exhibits no problem. See dmesg.3 attached. -- Pierre Beyssac pb@fasterix.frmug.org pb@fasterix.freenix.org Free domains: http://www.eu.org/ or mail dns-manager@EU.org --envbJBWh7q8WU6mo Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="dmesg.1" e 0.8.3 \\_SB_.PCI0.LNKC irq 12: [ 1 3 4 5 6 7 10 11 12 14 15] low,level,sharable 0.19.0 \\_SB_.PCI0.LNKC irq 12: [ 1 3 4 5 6 7 10 11 12 14 15] low,level,sharable 0.19.1 \\_SB_.PCI0.LNKA irq 11: [ 1 3 4 5 6 7 10 11 12 14 15] low,level,sharable 0.19.2 \\_SB_.PCI0.LNKB irq 10: [ 1 3 4 5 6 7 10 11 12 14 15] low,level,sharable 0.19.3 \\_SB_.PCI0.LNKA irq 11: [ 1 3 4 5 6 7 10 11 12 14 15] low,level,sharable 0.7.0 \\_SB_.PCI0.LNKB irq 10: [ 1 3 4 5 6 7 10 11 12 14 15] low,level,sharable 0.7.1 \\_SB_.PCI0.LNKC irq 12: [ 1 3 4 5 6 7 10 11 12 14 15] low,level,sharable 0.7.2 \\_SB_.PCI0.LNKD irq 5: [ 1 3 4 5 6 7 10 11 12 14 15] low,level,sharable 0.7.3 \\_SB_.PCI0.LNKA irq 11: [ 1 3 4 5 6 7 10 11 12 14 15] low,level,sharable 0.1.0 \\_SB_.PCI0.LNKB irq 10: [ 1 3 4 5 6 7 10 11 12 14 15] low,level,sharable 0.1.1 \\_SB_.PCI0.LNKC irq 12: [ 1 3 4 5 6 7 10 11 12 14 15] low,level,sharable 0.1.2 \\_SB_.PCI0.LNKD irq 5: [ 1 3 4 5 6 7 10 11 12 14 15] low,level,sharable 0.1.3 pci0: on pcib0 pci0: physical bus=0 map[10]: type 3, range 32, base e8000000, size 26, enabled found-> vendor=0x1106, dev=0x0305, revid=0x03 bus=0, slot=0, func=0 class=06-00-00, hdrtype=0x00, mfdev=0 cmdreg=0x0006, statreg=0x2210, cachelnsz=0 (dwords) lattimer=0x08 (240 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) powerspec 2 supports D0 D3 current D0 found-> vendor=0x1106, dev=0x8305, revid=0x00 bus=0, slot=1, func=0 class=06-04-00, hdrtype=0x01, mfdev=0 cmdreg=0x0007, statreg=0x2230, cachelnsz=0 (dwords) lattimer=0x00 (0 ns), mingnt=0x0c (3000 ns), maxlat=0x00 (0 ns) found-> vendor=0x1106, dev=0x0686, revid=0x40 bus=0, slot=7, func=0 class=06-01-00, hdrtype=0x00, mfdev=1 cmdreg=0x0087, statreg=0x0210, cachelnsz=0 (dwords) lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) powerspec 2 supports D0 D3 current D0 map[20]: type 4, range 32, base 0000d000, size 4, enabled found-> vendor=0x1106, dev=0x0571, revid=0x06 bus=0, slot=7, func=1 class=01-01-8a, hdrtype=0x00, mfdev=0 cmdreg=0x0007, statreg=0x0290, cachelnsz=0 (dwords) lattimer=0x20 (960 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) powerspec 2 supports D0 D3 current D0 map[20]: type 4, range 32, base 0000d400, size 5, enabled pcib0: matched entry for 0.7.INTD (source \\_SB_.PCI0.LNKD) pcib0: slot 7 INTD is routed to irq 5 found-> vendor=0x1106, dev=0x3038, revid=0x16 bus=0, slot=7, func=2 class=0c-03-00, hdrtype=0x00, mfdev=0 cmdreg=0x0007, statreg=0x0210, cachelnsz=8 (dwords) lattimer=0x20 (960 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) intpin=d, irq=5 powerspec 2 supports D0 D3 current D0 map[20]: type 4, range 32, base 0000d800, size 5, enabled pcib0: matched entry for 0.7.INTD (source \\_SB_.PCI0.LNKD) pcib0: slot 7 INTD is routed to irq 5 found-> vendor=0x1106, dev=0x3038, revid=0x16 bus=0, slot=7, func=3 class=0c-03-00, hdrtype=0x00, mfdev=0 cmdreg=0x0007, statreg=0x0210, cachelnsz=8 (dwords) lattimer=0x20 (960 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) intpin=d, irq=5 powerspec 2 supports D0 D3 current D0 found-> vendor=0x1106, dev=0x3057, revid=0x40 bus=0, slot=7, func=4 class=06-80-00, hdrtype=0x00, mfdev=0 cmdreg=0x0000, statreg=0x0290, cachelnsz=0 (dwords) lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) powerspec 2 supports D0 D3 current D0 map[10]: type 4, range 32, base 0000dc00, size 5, enabled pcib0: matched entry for 0.8.INTA (source \\_SB_.PCI0.LNKD) pcib0: slot 8 INTA is routed to irq 5 found-> vendor=0x1102, dev=0x0002, revid=0x08 bus=0, slot=8, func=0 class=04-01-00, hdrtype=0x00, mfdev=1 cmdreg=0x0005, statreg=0x0290, cachelnsz=0 (dwords) lattimer=0x20 (960 ns), mingnt=0x02 (500 ns), maxlat=0x14 (5000 ns) intpin=a, irq=5 powerspec 1 supports D0 D1 D2 D3 current D0 map[10]: type 4, range 32, base 0000e000, size 3, enabled found-> vendor=0x1102, dev=0x7002, revid=0x08 bus=0, slot=8, func=1 class=09-80-00, hdrtype=0x00, mfdev=1 cmdreg=0x0005, statreg=0x0290, cachelnsz=0 (dwords) lattimer=0x20 (960 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) powerspec 1 supports D0 D1 D2 D3 current D0 map[10]: type 4, range 32, base 0000e400, size 8, enabled map[14]: type 1, range 32, base ef003000, size 8, enabled pcib0: matched entry for 0.9.INTA (source \\_SB_.PCI0.LNKC) pcib0: slot 9 INTA is routed to irq 12 found-> vendor=0x1186, dev=0x1300, revid=0x10 bus=0, slot=9, func=0 class=02-00-00, hdrtype=0x00, mfdev=0 cmdreg=0x0007, statreg=0x0290, cachelnsz=0 (dwords) lattimer=0x20 (960 ns), mingnt=0x20 (8000 ns), maxlat=0x40 (16000 ns) intpin=a, irq=12 powerspec 2 supports D0 D1 D2 D3 current D0 map[10]: type 1, range 32, base ef000000, size 12, enabled pcib0: matched entry for 0.11.INTA (source \\_SB_.PCI0.LNKD) pcib0: slot 11 INTA is routed to irq 5 found-> vendor=0x11c1, dev=0x5811, revid=0x04 bus=0, slot=11, func=0 class=0c-00-10, hdrtype=0x00, mfdev=0 cmdreg=0x0006, statreg=0x0290, cachelnsz=8 (dwords) lattimer=0x20 (960 ns), mingnt=0x0c (3000 ns), maxlat=0x18 (6000 ns) intpin=a, irq=5 powerspec 2 supports D0 D1 D2 D3 current D0 map[10]: type 4, range 32, base 0000e800, size 5, enabled pcib0: matched entry for 0.13.INTA (source \\_SB_.PCI0.LNKB) pcib0: slot 13 INTA is routed to irq 10 found-> vendor=0x10ec, dev=0x8029, revid=0x00 bus=0, slot=13, func=0 class=02-00-00, hdrtype=0x00, mfdev=0 cmdreg=0x0003, statreg=0x0200, cachelnsz=0 (dwords) lattimer=0x00 (0 ns), mingnt=0x00 (0 ns), maxlat=0x00 (0 ns) intpin=a, irq=10 map[10]: type 4, range 32, base 0000ec00, size 8, enabled map[14]: type 1, range 32, base ef001000, size 8, enabled map[18]: type 1, range 32, base ef002000, size 12, enabled pcib0: matched entry for 0.17.INTA (source \\_SB_.PCI0.LNKA) pcib0: slot 17 INTA is routed to irq 11 found-> vendor=0x1000, dev=0x000f, revid=0x03 bus=0, slot=17, func=0 class=01-00-00, hdrtype=0x00, mfdev=0 cmdreg=0x0007, statreg=0x0200, cachelnsz=8 (dwords) lattimer=0x48 (2160 ns), mingnt=0x11 (4250 ns), maxlat=0x40 (16000 ns) intpin=a, irq=11 agp0: mem 0xe8000000-0xebffffff at device 0.0 on pci0 agp0: allocating GATT for aperture of size 256M pcib1: at device 1.0 on pci0 pcib1: secondary bus 1 pcib1: subordinate bus 1 pcib1: I/O decode 0xc000-0xcfff pcib1: memory decode 0xec000000-0xedffffff pcib1: prefetched decode 0xe0000000-0xe7ffffff pci1: on pcib1 pci1: physical bus=1 map[10]: type 3, range 32, base e0000000, size 27, enabled map[14]: type 4, range 32, base 0000c000, size 8, enabled map[18]: type 1, range 32, base ed000000, size 16, enabled pcib0: matched entry for 0.1.INTA (source \\_SB_.PCI0.LNKA) pcib0: slot 1 INTA is routed to irq 11 pcib1: slot 0 INTA is routed to irq 11 found-> vendor=0x1002, dev=0x5144, revid=0x01 bus=1, slot=0, func=0 class=03-00-00, hdrtype=0x00, mfdev=0 cmdreg=0x0087, statreg=0x02b0, cachelnsz=8 (dwords) lattimer=0x20 (960 ns), mingnt=0x08 (2000 ns), maxlat=0x00 (0 ns) intpin=a, irq=11 powerspec 2 supports D0 D1 D2 D3 current D0 pci1: at device 0.0 (no driver attached) isab0: at device 7.0 on pci0 isa0: on isab0 atapci0: port 0xd000-0xd00f at device 7.1 on pci0 atapci0: Correcting VIA config for southbridge data corruption bug ata0: reset tp1 mask=03 ostat0=50 ostat1=00 ata0-master: stat=0x80 err=0x80 lsb=0x80 msb=0x80 ata0-slave: stat=0x00 err=0x08 lsb=0x00 msb=0x00 ata0-master: stat=0x50 err=0x01 lsb=0x00 msb=0x00 ata0: reset tp2 mask=03 stat0=50 stat1=00 devices=0x1 ata0: at 0x1f0 irq 14 on atapci0 ata0: [MPSAFE] ata1: reset tp1 mask=03 ostat0=50 ostat1=50 ata1-master: stat=0x50 err=0x01 lsb=0x14 msb=0xeb ata1-slave: stat=0x00 err=0x01 lsb=0x14 msb=0xeb ata1: reset tp2 mask=03 stat0=50 stat1=00 devices=0xc ata1: at 0x170 irq 15 on atapci0 ata1: [MPSAFE] uhci0: port 0xd400-0xd41f irq 5 at device 7.2 on pci0 usb0: on uhci0 usb0: USB revision 1.0 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub0: 2 ports with 2 removable, self powered uhub0: port error, restarting port 1 uhub0: port error, giving up port 1 ums0: Logitech Optical USB Mouse, rev 2.00/3.40, addr 2, iclass 3/1 ums0: 3 buttons and Z dir. uhub0: port error, restarting port 2 uhub0: port error, giving up port 2 uhci1: port 0xd800-0xd81f irq 5 at device 7.3 on pci0 usb1: on uhci1 usb1: USB revision 1.0 uhub1: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1 uhub1: 2 ports with 2 removable, self powered uhub1: port error, restarting port 1 uhub1: port error, giving up port 1 uhub1: port error, restarting port 2 uhub1: port error, giving up port 2 pci0: at device 7.4 (no driver attached) pcm0: port 0xdc00-0xdc1f irq 5 at device 8.0 on pci0 emu: setmap (714000, 800), nseg=1, error=0 emu: setmap (773000, 1000), nseg=1, error=0 pcm0: pcm0: Codec features 5 bit master volume, no 3D Stereo Enhancement emu: setmap (6f6000, 1000), nseg=1, error=0 emu: setmap (6d8000, 1000), nseg=1, error=0 emu: setmap (792000, 1000), nseg=1, error=0 emu: setmap (790000, 1000), nseg=1, error=0 pcm0: sndbuf_setmap 2e92d000, 1000; 0xc5a99000 -> 2e92d000 pcm0: sndbuf_setmap 2e92b000, 1000; 0xc5a97000 -> 2e92b000 rl0: port 0xe400-0xe4ff mem 0xef003000-0xef0030ff irq 12 at device 9.0 on pci0 rl0: Ethernet address: 00:05:5d:4f:75:dc miibus0: on rl0 rlphy0: on miibus0 rlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto rl0: bpf attached fwohci0: mem 0xef000000-0xef000fff irq 5 at device 11.0 on pci0 fwohci0: latency timer 32 -> 32. fwohci0: cache size 8 -> 8. fwohci0: [MPSAFE] fwohci0: OHCI version 1.0 (ROM=1) fwohci0: No. of Isochronous channel is 8. fwohci0: EUI64 00:30:8d:01:21:32:d1:68 fwohci0: resetting OHCI...done (loop=0) fwohci0: phy read failed(1). fwohci0: fwphy_rddata: 0x2 loop=1, retry=1 fwohci0: fwphy_rddata: 0x3 loop=1, retry=0 fwohci0: Phy 1394a available S400, 3 ports. fwohci0: fwphy_rddata: 0x5 loop=1, retry=0 fwohci0: Enable 1394a Enhancements fwohci0: fwphy_rddata: 0x5 loop=1, retry=0 fwohci0: fwphy_rddata: 0x2 loop=1, retry=0 fwohci0: fwphy_rddata: 0x4 loop=1, retry=0 fwohci0: fwphy_rddata: 0x4 loop=1, retry=0 fwohci0: fwphy_rddata: 0x4 loop=1, retry=0 fwohci0: Link S400, max_rec 2048 bytes. fwohci0: BUS_OPT 0xa002 -> 0xf800a002 fwohci0: fwohci_set_intr: 1 firewire0: on fwohci0 fwohci0: Initiate bus reset fwohci0: fwphy_rddata: 0x1 loop=1, retry=0 fwohci0: fwphy_rddata: 0x1 loop=1, retry=0 fwohci0: BUS reset fwohci0: node_id=0xc800ffc0, gen=1, CYCLEMASTER mode firewire0: 1 nodes, maxhop <= 0, cable IRM = 0 (me) fwohci0: fw_set_bus_manager: 0->0 (loop=0) firewire0: bus manager 0 (me) send phy_config root_node=-1 gap_count=5 fwohci0: maxdesc: 2 fwohci0: start AT DMA status=0 ed0: port 0xe800-0xe81f irq 10 at device 13.0 on pci0 ed0: bpf attached ed0: address 00:00:00:00:00:00, type NE2000 (16 bit) ncr0: port 0xec00-0xecff mem 0xef002000-0xef002fff,0xef001000-0xef0010ff irq 11 at device 17.0 on pci0 ncr0: minsync=12, maxsync=137, maxoffs=16, 128 dwords burst, large dma fifo ncr0: single-ended, open drain IRQ driver, using on-chip SRAM fdc0: port 0x3f7,0x3f0-0x3f5 irq 6 drq 2 on acpi0 fdc0: FIFO enabled, 8 bytes threshold fd0: <1440-KB 3.5" drive> on fdc0 drive 0 sio0: irq maps: 0x21 0x31 0x21 0x21 sio0 port 0x3f8-0x3ff irq 4 on acpi0 sio0: type 16550A sio1: irq maps: 0x21 0x29 0x21 0x21 sio1 port 0x2f8-0x2ff irq 3 on acpi0 sio1: type 16550A unknown: not probed (disabled) ppc0: using extended I/O port range ppc0: EPP SPP ppc0 port 0x378-0x37f irq 7 on acpi0 ppc0: Generic chipset (EPP/NIBBLE) in COMPATIBLE mode ppbus0: on ppc0 lpt0: on ppbus0 lpt0: Interrupt-driven port unknown: not probed (disabled) unknown: not probed (disabled) atkbdc0: port 0x64,0x60 irq 1 on acpi0 atkbd0: flags 0x1 irq 1 on atkbdc0 atkbd: the current kbd controller command byte 0067 atkbd: keyboard ID 0x41ab (2) kbd0 at atkbd0 kbd0: atkbd0, AT 101/102 (2), config:0x1, flags:0x3d0000 psm0: unable to allocate IRQ unknown: not probed (disabled) unknown: not probed (disabled) unknown: not probed (disabled) unknown: not probed (disabled) unknown: not probed (disabled) ata: ata0 already exists; skipping it ata: ata1 already exists; skipping it atkbdc: atkbdc0 already exists; skipping it ed: ed0 already exists; skipping it fdc: fdc0 already exists; skipping it ppc: ppc0 already exists; skipping it sc: sc0 already exists; skipping it sio: sio0 already exists; skipping it sio: sio1 already exists; skipping it vga: vga0 already exists; skipping it Trying Read_Port at 203 Trying Read_Port at 243 Trying Read_Port at 283 Trying Read_Port at 2c3 Trying Read_Port at 303 Trying Read_Port at 343 Trying Read_Port at 383 Trying Read_Port at 3c3 isa_probe_children: disabling PnP devices isa_probe_children: probing non-PnP devices orm0: