Subject: kern/30398: panic in ohci_softintr
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: None <dogcow@babymeat.com>
List: netbsd-bugs
Date: 06/02/2005 05:48:00
>Number:         30398
>Category:       kern
>Synopsis:       panic in ohci_softintr
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Jun 02 05:48:00 +0000 2005
>Originator:     Tom Spindler
>Release:        NetBSD 3.99.5
>Organization:
	
>Environment:
	
	
System: NetBSD mercury.babymeat.com 3.99.5 NetBSD 3.99.5 (MERCURY) #19: Mon May 23 22:37:22 PDT 2005 dogcow@mercury.babymeat.com:/media/tmp/obj/obj/usr/src/sys/arch/i386/compile/MERCURY i386
Architecture: i386
Machine: i386
>Description:
	
While trying to get gphoto2 to recognize my camera, I ended up
(apparently) unplugging something at the wrong time. I have no idea
if having simultaneous ehci and ohci devices active exacerbated
the problem.

panic: ohci_softintr: addr 0x%08lx not found
#0  0xc0450000 in ?? ()
(gdb) bt
#0  0xc0450000 in ?? ()
#1  0xc026d822 in cpu_reboot (howto=256, bootstr=0x0)
    at /usr/src/sys/arch/i386/i386/machdep.c:752
#2  0xc01eed8b in panic (
    fmt=0xc034a600 "ohci_softintr: addr 0x%08lx not found")
    at /usr/src/sys/kern/subr_prf.c:245
#3  0xc015969a in ohci_softintr (v=0xc11c5000)
    at /usr/src/sys/dev/usb/ohci.c:1287
#4  0xc0267b6c in softintr_dispatch (which=1)
    at /usr/src/sys/arch/x86/x86/softintr.c:104
(gdb) up
#1  0xc026d822 in cpu_reboot (howto=256, bootstr=0x0)
    at /usr/src/sys/arch/i386/i386/machdep.c:752
752                     dumpsys();
(gdb) up
#2  0xc01eed8b in panic (
    fmt=0xc034a600 "ohci_softintr: addr 0x%08lx not found")
    at /usr/src/sys/kern/subr_prf.c:245
245             cpu_reboot(bootopt, NULL);
(gdb) up
#3  0xc015969a in ohci_softintr (v=0xc11c5000)
    at /usr/src/sys/dev/usb/ohci.c:1287
1287                    panic("ohci_softintr: addr 0x%08lx not found", (u_long)done);
(gdb) print done
$1 = 1097136
(gdb) l
1282                            done = le32toh(sitd->itd.itd_nextitd);
1283                            sidone = sitd;
1284                            DPRINTFN(5,("add ITD %p\n", sitd));
1285                            continue;
1286                    }
1287                    panic("ohci_softintr: addr 0x%08lx not found", (u_long)done);
1288            }
1289
1290            DPRINTFN(10,("ohci_softintr: sdone=%p sidone=%p\n", sdone, sidone));
1291
(gdb) print sitd
$2 = (ohci_soft_itd_t *) 0xcb58bd54
(gdb) print *sitd
$3 = {itd = {itd_flags = 239044224, itd_bp0 = 0, itd_nextitd = 3411590852, 
    itd_be = 3411590664, itd_offset = {1, 0, 54204, 49546, 48556, 52056, 
      54635, 49180}}, nextitd = 0xcb58bdb4, dnext = 0x206, 
  physaddr = 3228564800, hnext = {le_next = 0x2, le_prev = 0xcb58bdb4}, 
  xfer = 0x0, flags = 65280, isdone = 7 '\a'}
(gdb) up
#4  0xc0267b6c in softintr_dispatch (which=1)
    at /usr/src/sys/arch/x86/x86/softintr.c:104
104                     (*sih->sih_fn)(sih->sih_arg);
(gdb) print *sih
$4 = {sih_q = {tqe_next = 0x0, tqe_prev = 0xc0391f70}, 
  sih_intrhead = 0xc0391f70, sih_fn = 0xc01591e0 <ohci_softintr>, 
  sih_arg = 0xc11c5000, sih_pending = 0}

>How-To-Repeat:
Unknown.
	
>Fix:
	

>Unformatted: