Subject: kern/12678: HPT366 sometimes hangs system
To: None <gnats-bugs@gnats.netbsd.org>
From: Arne H Juul <arnej@fast.no>
List: netbsd-bugs
Date: 04/16/2001 11:48:11
>Number:         12678
>Category:       kern
>Synopsis:       HPT366 sometimes hangs system
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Apr 16 02:49:00 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator:     Arne H Juul
>Release:        NetBSD 1.5U
>Organization:
	PVV.org
>Environment:
	
System: NetBSD nocturne.trondheim.fast.no 1.5U NetBSD 1.5U (NOCYDS) #9: Sat Apr 14 22:11:48 CEST 2001 arnej@nocturne.trondheim.fast.no:/usr/src/sys/arch/i386/compile/NOCYDS i386
Architecture: i386
Machine: i386
>Description:
	I have a HPT366 controller with one disk hanging on it:
pciide1 at pci0 dev 13 function 0: Triones/Highpoint HPT366/370 IDE Controller (
rev. 0x01)
pciide1: bus-master DMA support present
pciide1: primary channel wired to native-PCI mode
pciide1: using irq 11 for native-PCI interrupt
wd3 at pciide1 channel 0 drive 1: <FUJITSU MPC3102AT E>
wd3(pciide1:0:1): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA data 
transfers)
pciide2 at pci0 dev 13 function 1: Triones/Highpoint HPT366/370 IDE Controller (
rev. 0x01)
pciide2: bus-master DMA support present
pciide2: primary channel wired to native-PCI mode
pciide2: using irq 11 for native-PCI interrupt

	when I use this disk, the system may go into a
tight loop printing "pciide1:0: bogus intr" on the console, from
the hpt_pci_intr routine.  I've been able to catch this on the
console sometimes (usually I'm running X and then it just hangs).
From DDB a "t" will show something like:
	[...]
	pckbdintr()
	Xintr1()
	--- interrupt
	Xspllower()
	hpt_pci_intr()
	Xintr11()
	--- interrupt
	Xdoreti()
	--
	idle()
	[...]
this is just transcribed from screen.  Another time, when I
had left the machine so it probably had been in this state
for some time, it looked like this:
	[...]
        pckbdintr()
        Xintr1()
        --- interrupt
        Xspllower()
	hpt_pci_intr()
	Xintr11()
	--- interrupt
	Xspllower()
	clockintr()
	Xintr0()
	--- interrupt
	Xdoreti()
	--- interrupt
	Xdoreti()
	--- interrupt
	Xdoreti()
	--- interrupt
	Xdoreti()
etc. it looks like these interrupts are coming faster than the system
is able to service them.

>How-To-Repeat:
	have hardware like mine and use it normally :-(
It's been like this since I bought the HPT controller so
it's nothing new in 1.5U.
Here's full dmesg output in case it's helpful:

NetBSD 1.5U (NOCYDS) #9: Sat Apr 14 22:11:48 CEST 2001
    arnej@nocturne.trondheim.fast.no:/usr/src/sys/arch/i386/compile/NOCYDS
cpu0: Intel Pentium II (Klamath) (686-class), 299.34 MHz
cpu0: I-cache 16K 32b/line 4-way, D-cache 16K 32b/line 2/4-way
cpu0: L2 cache 512K 32b/line 4-way
cpu0: features 80f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR>
cpu0: features 80f9ff<PGE,MCA,CMOV,MMX>
total memory = 255 MB
avail memory = 142 MB
using 11424 buffers containing 102 MB of memory
BIOS32 rev. 0 found at 0xfd7a0
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: Intel 82443BX Host Bridge/Controller (rev. 0x03)
ppb0 at pci0 dev 1 function 0: Intel 82443BX AGP Interface (rev. 0x03)
pci1 at ppb0 bus 1
pci1: i/o space, memory space enabled
vga1 at pci1 dev 0 function 0: Matrox MGA G200 AGP (rev. 0x01)
wsdisplay0 at vga1: console (80x24, vt100 emulation)
pcib0 at pci0 dev 7 function 0
pcib0: Intel 82371AB PCI-to-ISA Bridge (PIIX4) (rev. 0x02)
pciide0 at pci0 dev 7 function 1: Intel 82371AB IDE controller (PIIX4) (rev. 0x01)
pciide0: bus-master DMA support present
pciide0: primary channel wired to compatibility mode
wd0 at pciide0 channel 0 drive 0: <ST36531A>
wd0: drive supports 32-sector PIO transfers, LBA addressing
wd0: 6204 MB, 13446 cyl, 15 head, 63 sec, 512 bytes/sect x 12706470 sectors
wd0: 32-bit data port
wd0: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
wd1 at pciide0 channel 0 drive 1: <IBM-DTLA-307030>
wd1: drive supports 16-sector PIO transfers, LBA addressing
wd1: 29314 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 60036480 sectors
wd1: 32-bit data port
wd1: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 5 (Ultra/100)
pciide0: primary channel interrupting at irq 14
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA data transfers)
wd1(pciide0:0:1): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA data transfers)
pciide0: secondary channel wired to compatibility mode
atapibus0 at pciide0 channel 1
cd0 at atapibus0 drive 1: <CD-ROM 40X/AKU, , U40> type 5 cdrom removable
cd0: 32-bit data port
cd0: drive supports PIO mode 4, DMA mode 2
wd2 at pciide0 channel 1 drive 0: <FUJITSU MPD3084AT>
wd2: drive supports 16-sector PIO transfers, LBA addressing
wd2: 8063 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 16514064 sectors
wd2: 32-bit data port
wd2: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 4 (Ultra/66)
pciide0: secondary channel interrupting at irq 15
pciide0: secondary channel interrupting at irq 15
wd2(pciide0:1:0): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA data transfers)
cd0(pciide0:1:1): using PIO mode 4, DMA mode 2 (using DMA data transfers)
uhci0 at pci0 dev 7 function 2: Intel 82371AB USB Host Controller (PIIX4) (rev. 0x01)
uhci0: interrupting at irq 9
usb0 at uhci0: USB revision 1.0
uhub0 at usb0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
Intel 82371AB Power Management Controller (PIIX4) (miscellaneous bridge, revision 0x02) at pci0 dev 7 function 3 not configured
yds0 at pci0 dev 12 function 0: Yamaha 740C (DS-1) Audio (rev. 0x03)
yds0: interrupting at irq 10
yds0: ADS3 codec; Analog Devices Phat Stereo
audio0 at yds0: full duplex, mmap, independent
pciide1 at pci0 dev 13 function 0: Triones/Highpoint HPT366/370 IDE Controller (rev. 0x01)
pciide1: bus-master DMA support present
pciide1: primary channel wired to native-PCI mode
pciide1: using irq 11 for native-PCI interrupt
wd3 at pciide1 channel 0 drive 1: <FUJITSU MPC3102AT E>
wd3: drive supports 16-sector PIO transfers, LBA addressing
wd3: 9765 MB, 16383 cyl, 16 head, 63 sec, 512 bytes/sect x 20000536 sectors
wd3: 32-bit data port
wd3: drive supports PIO mode 4, DMA mode 2, Ultra-DMA mode 2 (Ultra/33)
wd3(pciide1:0:1): using PIO mode 4, Ultra-DMA mode 2 (Ultra/33) (using DMA data transfers)
pciide2 at pci0 dev 13 function 1: Triones/Highpoint HPT366/370 IDE Controller (rev. 0x01)
pciide2: bus-master DMA support present
pciide2: primary channel wired to native-PCI mode
pciide2: using irq 11 for native-PCI interrupt
fxp0 at pci0 dev 16 function 0: Intel i82557 Ethernet, rev 5
fxp0: interrupting at irq 9
fxp0: Ethernet address 00:90:27:13:cf:91, 10/100 Mb/s
inphy0 at fxp0 phy 1: i82555 10/100 media interface, rev. 0
inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
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
joy0 at isa0 port 0x201
joy0: joystick not connected
lpt0 at isa0 port 0x378-0x37b irq 7
isapnp0 at isa0 port 0x279: ISA Plug 'n Play device support
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
isapnp0: no ISA Plug 'n Play devices found
opl0 at yds0: model OPL3
midi0 at opl0: DS-1 integrated Yamaha OPL3
mpu0 at yds0
midi1 at mpu0: Yamaha DS-1 MIDI UART
biomask eb65 netmask eb65 ttymask fbe7
boot device: wd0
root on wd0a dumps on wd0b
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)
wsdisplay0: screen 5 added (80x25, vt100 emulation)

>Fix:
	none known :-(
>Release-Note:
>Audit-Trail:
>Unformatted: