Subject: kern/10505: pciide displays errors: bus-master DMA error: missing interrupt
To: None <gnats-bugs@gnats.netbsd.org>
From: Martin Husemann <martin@rumolt.teuto.de>
List: netbsd-bugs
Date: 07/04/2000 12:47:16
>Number:         10505
>Category:       kern
>Synopsis:       pciide displays errors: bus-master DMA error: missing interrupt
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Jul 04 12:48:00 PDT 2000
>Closed-Date:
>Last-Modified:
>Originator:     Martin Husemann
>Release:        1.5_Alpha as of June 29
>Organization:
	
>Environment:
	
System: NetBSD emmas.up-vision.de 1.5_ALPHA NetBSD 1.5_ALPHA (EMMAS) #1: Tue Jul  4 10:40:00 MEST 2000 martin@wilhelminas:/usr/src/sys-i4b/arch/i386/compile/EMMAS i386


>Description:

We had serious trouble with various pieces of this machine, so we've been
replacing everything step by step. This includes power supply, processor,
memory, harddisks, IDE cables (now 80 wire ones) and mainboard. So I'm quite
sure this is not related to further hardware problems, since it survived
all those replacements:

From time to time the pciide driver goes berserk and seems to loose interrupts.
This happens both when reading and when writing. It doesn't seem to happen
on the secondary IDE channel.

Until now it was harmless (besides some connection timeouts while the
error recovery was in progress).

Dmesg output, including some of the errors, follows:

NetBSD 1.5_ALPHA (EMMAS) #1: Tue Jul  4 10:40:00 MEST 2000
    martin@wilhelminas:/usr/src/sys-i4b/arch/i386/compile/EMMAS
cpu0: family 6 model 6 step 5
cpu0: Intel Pentium II (Celeron) (686-class)
total memory = 127 MB
avail memory = 115 MB
using 1658 buffers containing 6632 KB of memory
BIOS32 rev. 0 found at 0xfdae0
PCI BIOS rev. 2.1 found at 0xfdb01
PCI IRQ Routing Table rev. 1.0 found at 0xf7810, size 176 bytes (9 entries)
PCI Interrupt Router at 000:07:0 (vendor 0x1106 product 0x0686)
mainbus0 (root)
pci0 at mainbus0 bus 0: configuration mode 1
pci0: i/o space, memory space enabled
pchb0 at pci0 dev 0 function 0
pchb0: vendor 0x1106 product 0x0691 (rev. 0xc4)
ppb0 at pci0 dev 1 function 0: vendor 0x1106 product 0x8598 (rev. 0x00)
pci1 at ppb0 bus 1
pci1: i/o space, memory space enabled
vga0 at pci1 dev 0 function 0: vendor 0x102b product 0x1001 (rev. 0x02)
wsdisplay0 at vga0: console (80x25, vt100 emulation)
pcib0 at pci0 dev 7 function 0
pcib0: vendor 0x1106 product 0x0686 (rev. 0x1b)
pciide0 at pci0 dev 7 function 1: VIA Tech VT82C586A IDE Controller (rev. 0x06)
pciide0: bus-master DMA support present
pciide0: primary channel configured to compatibility mode
wd0 at pciide0 channel 0 drive 0: <WDC WD205BA>
wd0: drive supports 16-sector pio transfers, lba addressing
wd0: 19574 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 40088160 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 4
pciide0: primary channel interrupting at irq 14
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (using DMA data transfers)
pciide0: secondary channel configured to compatibility mode
wd1 at pciide0 channel 1 drive 0: <IBM-DTTA-371440>
wd1: drive supports 16-sector pio transfers, lba addressing
wd1: 13783 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 28229040 sectors
wd1: 32-bit data port
wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2
pciide0: secondary channel interrupting at irq 15
wd1(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2 (using DMA data transfers)
uhci0 at pci0 dev 7 function 2: vendor 0x1106 product 0x3038 (rev. 0x0e)
uhci0: interrupting at irq 9
usb0 at uhci0: USB revision 1.0
uhub0 at usb0
uhub0: vendor 0x1106 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
uhci1 at pci0 dev 7 function 3: vendor 0x1106 product 0x3038 (rev. 0x0e)
uhci1: interrupting at irq 9
usb1 at uhci1: USB revision 1.0
uhub1 at usb1
uhub1: vendor 0x1106 UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
vendor 0x1106 product 0x3057 (SMBus serial bus, revision 0x20) at pci0 dev 7 function 4 not configured
auvia0 at pci0 dev 7 function 5: VIA VT82C686A AC'97 Audio (rev 0x21)
auvia0: interrupting at irq 10
auvia0: ADS72 codec; headphone, Analog Devices Phat Stereo
audio0 at auvia0: full duplex, mmap, independent
ne0 at pci0 dev 10 function 0: RealTek 8029 Ethernet
ne0: 10base2, 10baseT, 10baseT-FDX, auto, default [0x00 0x30] auto
ne0: Ethernet address 00:80:c8:fd:c6:75
ne0: interrupting at irq 10
isic0 at pci0 dev 12 function 0: ELSA QuickStep 1000pro/PCI
isic0: IPAC PSB2115 Version 1.1
isic0: interrupting at irq 11
isa0 at pcib0
com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
pckbc0 at isa0 port 0x60-0x64
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
lpt0 at isa0 port 0x378-0x37b irq 7
pcppi0 at isa0 port 0x61
sysbeep0 at pcppi0
npx0 at isa0 port 0xf0-0xff: using exception 16
fdc0 at isa0 port 0x3f0-0x3f7 irq 6 drq 2
fd0 at fdc0 drive 0: 1.44MB, 80 cyl, 2 head, 18 sec
pcic0 at isa0 port 0x3e2-0x3e3 iomem 0xd0000-0xdffff
pcic0: controller 0 (Intel 82365SL Revision 1) has sockets A and B
pcic0: controller 1 (Intel 82365SL Revision 1) has no sockets
pcmcia0 at pcic0 controller 0 socket 0
pcmcia1 at pcic0 controller 0 socket 1
apm0 at mainbus0: Power Management spec V1.2
biomask e365 netmask ef65 ttymask ffe7
pcic0: controller 0 detecting irqs with mask 0xdeb8:..5
pcic0: can't share irq with cards; polling for socket events
i4b: ISDN call control device attached
i4btrc: 2 ISDN trace device(s) attached
i4bctl: ISDN system control port attached
i4brbch: 4 raw B channel access device(s) attached
i4btel: 2 ISDN telephony interface device(s) attached
i4bipr: 2 IP over raw HDLC ISDN device(s) attached (VJ header compression)
i4bisppp: 2 ISDN SyncPPP device(s) attached
IPsec: Initialized Security Association Processing.
wi0 at pcmcia0 function 0 port 0x500-0x53f
wi0: address 00:60:1d:f1:d0:06
boot device: wd0
root on wd0a dumps on wd0b
root file system type: ffs
IP Filter: v3.4.6 initialized.  Default = pass all, Logging = enabled
pcmcia0: card irq 5
wsdisplay0: screen 1 added (80x25, vt100 emulation)
wsdisplay0: screen 2 added (80x25, vt100 emulation)
wsdisplay0: screen 3 added (80x25, vt100 emulation)
wsdisplay0: screen 4 added (80x25, vt100 emulation)
wsmux1: connecting to wsdisplay0
ipr0: not multicast capable, IPv6 not enabled
ipr0: not multicast capable, IPv6 not enabled
ipr0: not multicast capable, IPv6 not enabled
pciide0:0:0: lost interrupt
	type: ata tc_bcount: 8192 tc_skip: 0
pciide0:0:0: bus-master DMA error: missing interrupt, status=0x20
wd0: transfer error, downgrading to Ultra-DMA mode 1
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 1 (using DMA data transfers)
wd0a: DMA error writing fsbn 613312 of 613312-613327 (wd0 bn 613312; cn 608 tn 7 sn 7), retrying
wd0: soft error (corrected)
pciide0:0:0: lost interrupt
	type: ata tc_bcount: 8192 tc_skip: 0
pciide0:0:0: bus-master DMA error: missing interrupt, status=0x21
wd0: transfer error, downgrading to DMA mode 2
wd0(pciide0:0:0): using PIO mode 4, DMA mode 2 (using DMA data transfers)
wd0a: DMA error reading fsbn 2132128 of 2132128-2132143 (wd0 bn 2132128; cn 2115 tn 3 sn 19), retrying
wd0: soft error (corrected)

>How-To-Repeat:

Just boot this particular machine and let it work a few days.

>Fix:
n/a

>Release-Note:
>Audit-Trail:
>Unformatted: