The following reply was made to PR i386/6553; it has been noted by GNATS. From: Jacob Meuser <[email protected]> To: Vladim?r Kotal <[email protected]> Cc: [email protected] Subject: Re: i386/6553: crash in ohci_timeout when plugging/unplugging USB device Date: Sun, 30 Jan 2011 19:52:29 +0000
please try -current. lots of work has been done in this area since 4.8 release. On Sun, Jan 30, 2011 at 03:01:32PM +0100, Vladim?r Kotal wrote: > >Number: 6553 > >Category: i386 > >Synopsis: crash in ohci_timeout when plugging/unplugging USB device > >Confidential: yes > >Severity: serious > >Priority: medium > >Responsible: bugs > >State: open > >Quarter: > >Keywords: > >Date-Required: > >Class: sw-bug > >Submitter-Id: unknown > >Arrival-Date: Sun Jan 30 15:10:01 GMT 2011 > >Closed-Date: > >Last-Modified: > >Originator: > >Release: > >Organization: > >Environment: > System : OpenBSD 4.8 > Details : OpenBSD 4.8-stable (NET4801) #2: Thu Nov 18 11:13:30 CET > 2010 > root@lab:/usr/src/sys/arch/i386/compile/NET4801 > > Architecture: OpenBSD.i386 > Machine : i386 > >Description: > When USB to 1-wire controller DS9490R (handled by uow(4) driver) was > attached to Soekris 4801 box for the first time the box panicked. > > There is no USB hub, the device is plugged directly to the USB port. > There is no other USB device connected to the system. > > I tried to reproduce this by plugging and uplugging and after couple > of tries the machine panicked with the following (console output): > > > owtemp0 at onewire0 "Temperature" sn 000002cfc0e2 > owtemp1 at onewire0 "Temperature" sn 000002cfbbe9 > owid0 at onewire0 "ID" sn 0000002e86f8 > ohci_freex: xfer=0xd0dba200 not busy, 0x46524545 > owid0 detached > uow0: cmd failed, type 0x01, cmd 0x0043, param 0x0000: IOERROR > uow0: cmd failed, type 0x00, cmd 0x0000, param 0x0000: IOERROR > owtemp1 detached > owtemp0 detached > onewire0 detached > uow0 detached > uow0 at uhub0 port 1 "vendor 0x04fa product 0x2490" rev 1.00/0.02 addr 2 > onewire0 at uow0 > owtemp0 at onewire0 "Temperature" sn 000002cfc0e2 > owtemp1 at onewire0 "Temperature" sn 000002cfbbe9 > owid0 at onewire0 "ID" sn 0000002e86f8 > ohci_freex: xfer=0xd0dbaf00 not busy, 0x46524545 > uow0: cmd failed, type 0x01, cmd 0x0043, param 0x0000: IOERROR > uow0: cmd failed, type 0x00, cmd 0x0000, param 0x0000: IOERROR > uow0: cmd failed, type 0x01, cmd 0x0043, param 0x0000: IOERROR > uow0: cmd failed, type 0x00, cmd 0x0000, param 0x0000: IOERROR > uow0: cmd failed, type 0x01, cmd 0x0043, param 0x0000: IOERROR > uow0: cmd failed, type 0x00, cmd 0x0000, param 0x0000: IOERROR > uow0: cmd failed, type 0x01, cmd 0x0053, param 0x00f0: IOERROR > uow0: cmd failed, type 0x00, cmd 0x0000, param 0x0000: IOERROR > uow0: cmd failed, type 0x01, cmd 0x0029, param 0x0000: IOERROR > uow0: cmd failed, type 0x00, cmd 0x0000, param 0x0000: IOERROR > uow0: cmd failed, type 0x01, cmd 0x0029, param 0x0000: IOERROR > uow0: cmd failed, type 0x00, cmd 0x0000, param 0x0000: IOERROR > uow0: cmd failed, type 0x01, cmd 0x0029, param 0x0000: IOERROR > uow0: cmd failed, type 0x00, cmd 0x0000, param 0x0000: IOERROR > owid0 detached > owtemp1 detached > owtemp0 detached > onewire0 detached > uow0 detached > uow0 at uhub0 port 1 "vendor 0x04fa product 0x2490" rev 1.00/0.02 addr 2 > onewire0 at uow0 > ohci_freex: xfer=0xd0dbaa80 not busy, 0x4f4e5155 > uvm_fault(0xd081a4c0, 0xefff0000, 0, 1) -> e > kernel: page fault trap, code=0 > Stopped at ohci_timeout+0xe: movl 0(%eax),%eax > ddb> trace > ohci_timeout(d0dbaa80,d41d2f00,d0285356,d41d2ef4,d0bfebc0) at > ohci_timeout+0xe > softclock(0,d41d2f10,d03def0e,0,d0201f7a) at softclock+0x225 > softintr_dispatch(0) at softintr_dispatch+0x4f > Xsoftclock() at Xsoftclock+0x12 > --- interrupt --- > cpu_idle_cycle(d085fd40) at cpu_idle_cycle+0xf > Bad frame pointer: 0xd08a0e48 > ddb> ps > PID PPID PGRP UID S FLAGS WAIT COMMAND > 3221 0 0 0 3 0x100200 usbsyn onewire0 > 23500 1 23500 0 3 0x4080 ttyin getty > 9902 1 9902 0 3 0x80 select cron > 2593 1 2593 0 3 0x80 nanosleep watchdogd > 16709 1 16709 0 3 0x80080 nanosleep sensorsd > 7802 1 7802 32767 3 0x180 kqread thttpd > 7760 1 7760 71 3 0x180 kqread ftp-proxy > 22335 1 22335 77 3 0x180 poll dhcpd > 3090 1 3090 0 3 0x80 select sshd > 8132 1 8132 0 3 0x80 poll ntpd > 19020 5942 19020 83 3 0x180 poll ntpd > 5942 1 5942 83 3 0x180 poll ntpd > 26829 13618 13618 70 3 0x180 select named > 13618 1 13618 0 3 0x180 netio named > 8385 19140 19140 74 3 0x180 bpf pflogd > 19140 1 19140 0 3 0x80 netio pflogd > 25043 2949 2949 73 2 0x180 syslogd > 2949 1 2949 0 3 0x88 netio syslogd > 15949 1 15949 77 3 0x180 poll dhclient > 2716 1 6737 0 3 0x80 poll dhclient > 29749 1 29749 0 3 0x80 mfsidl mount_mfs > 9097 1 9097 0 3 0x80 mfsidl mount_mfs > 14 0 0 0 3 0x100200 bored crypto > 13 0 0 0 3 0x100200 aiodoned aiodoned > 12 0 0 0 3 0x100200 syncer update > 11 0 0 0 3 0x100200 cleaner cleaner > 10 0 0 0 3 0x100200 reaper reaper > 9 0 0 0 3 0x100200 pgdaemon pagedaemon > 7 0 0 0 3 0x100200 pftm pfpurge > 6 0 0 0 3 0x100200 usbtsk usbtask > 5 0 0 0 3 0x100200 owdt usb0 > 4 0 0 0 3 0x100200 bored syswq > * 3 0 0 0 7 0x40100200 idle0 > 2 0 0 0 3 0x100200 kmalloc kmthread > 1 0 1 0 3 0x4080 wait init > 0 -1 0 0 3 0x80200 scheduler swapper > ddb> > > > I believe the cause of the panic is the same as described in 2004 by > Ted Unangst here: > http://marc.info/?l=openbsd-tech&m=109247316506733&w=2 > > >How-To-Repeat: > Continuously plug and unplug USB device to Soekris box (in this case > DS9490R) > > > >Fix: > The idea which might be worth trying is highlighted in the email > referenced above. > > > dmesg: > OpenBSD 4.8-stable (NET4801) #2: Thu Nov 18 11:13:30 CET 2010 > root@lab:/usr/src/sys/arch/i386/compile/NET4801 > cpu0: Geode(TM) Integrated Processor by National Semi ("Geode by NSC" > 586-class) 234 MHz > cpu0: FPU,TSC,MSR,CX8,CMOV,MMX > real mem = 133787648 (127MB) > avail mem = 124633088 (118MB) > mainbus0 at root > bios0 at mainbus0: AT/286+ BIOS, date 20/80/03, BIOS32 rev. 0 @ 0xf7840 > pcibios0 at bios0: rev 2.0 @ 0xf0000/0x10000 > pcibios0: pcibios_get_intr_routing - function not supported > pcibios0: PCI IRQ Routing information unavailable. > pcibios0: PCI bus #0 is the last bus > cpu0 at mainbus0: (uniprocessor) > cpu0: TSC disabled > pci0 at mainbus0 bus 0: configuration mode 1 (bios) > pchb0 at pci0 dev 0 function 0 "Cyrix GXm PCI" rev 0x00 > sis0 at pci0 dev 6 function 0 "NS DP83815 10/100" rev 0x00, DP83816A: > irq 10, address 00:00:24:cd:32:60 > nsphyter0 at sis0 phy 0: DP83815 10/100 PHY, rev. 1 > sis1 at pci0 dev 7 function 0 "NS DP83815 10/100" rev 0x00, DP83816A: > irq 10, address 00:00:24:cd:32:61 > nsphyter1 at sis1 phy 0: DP83815 10/100 PHY, rev. 1 > sis2 at pci0 dev 8 function 0 "NS DP83815 10/100" rev 0x00, DP83816A: > irq 10, address 00:00:24:cd:32:62 > nsphyter2 at sis2 phy 0: DP83815 10/100 PHY, rev. 1 > hifn0 at pci0 dev 14 function 0 "Hifn 7951" rev 0x01: LZS 3DES ARC4 > MD5 SHA1 RNG PK, 128KB sram, irq 11 > gscpcib0 at pci0 dev 18 function 0 "NS SC1100 ISA" rev 0x00 > gpio0 at gscpcib0: 64 pins > "NS SC1100 SMI" rev 0x00 at pci0 dev 18 function 1 not configured > pciide0 at pci0 dev 18 function 2 "NS SCx200 IDE" rev 0x01: DMA, > channel 0 wired to compatibility, channel 1 wired to compatibility > wd0 at pciide0 channel 0 drive 0: <SanDisk SDCFB-1024> > wd0: 4-sector PIO, LBA, 977MB, 2001888 sectors > wd1 at pciide0 channel 0 drive 1: <Flash Card> > wd1: 1-sector PIO, LBA, 62MB, 128256 sectors > wd0(pciide0:0:0): using PIO mode 4, DMA mode 2 > wd1(pciide0:0:1): using PIO mode 4 > geodesc0 at pci0 dev 18 function 5 "NS SC1100 X-Bus" rev 0x00: iid 6 > revision 3 wdstatus 9<WDRST,WDOVF> > ohci0 at pci0 dev 19 function 0 "Compaq USB OpenHost" rev 0x08: irq 5, > version 1.0, legacy support > isa0 at gscpcib0 > isadma0 at isa0 > com0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo > com0: console > com1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo > nsclpcsio0 at isa0 port 0x2e/2: NSC PC87366 rev 9: GPIO VLM TMS > gpio1 at nsclpcsio0: 29 pins > gscsio0 at isa0 port 0x15c/2: SC1100 SIO rev 1: > npx0 at isa0 port 0xf0/16: reported by CPUID; using exception 16 > usb0 at ohci0: USB revision 1.0 > uhub0 at usb0 "Compaq OHCI root hub" rev 1.00/1.00 addr 1 > biomask f3e7 netmask ffe7 ttymask ffff > rd0: fixed, 7480 blocks > uow0 at uhub0 port 1 "vendor 0x04fa product 0x2490" rev 1.00/0.02 addr 2 > onewire0 at uow0 > root on rd0a swap on rd0b dump on rd0b > owtemp0 at onewire0 "Temperature" sn 000002cfc0e2 > owtemp1 at onewire0 "Temperature" sn 000002cfbbe9 > owid0 at onewire0 "ID" sn 0000002e86f8 > > usbdevs: > Controller /dev/usb0: > addr 1: full speed, self powered, config 1, OHCI root hub(0x0000), > Compaq(0x0e11), rev 1.00 > port 1 addr 2: full speed, power 100 mA, config 1, product > 0x2490(0x2490), vendor 0x04fa(0x04fa), rev 0.02 > port 2 powered > port 3 powered > > > >Release-Note: > >Audit-Trail: > >Unformatted: -- [email protected] SDF Public Access UNIX System - http://sdf.lonestar.org
