kern/77799: Panic on attach of a mp3 player to USB

Guido van Rooij guido at gvr.org
Sun Feb 20 19:40:25 GMT 2005


>Number:         77799
>Category:       kern
>Synopsis:       Panic on attach of a mp3 player to USB
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Feb 20 19:40:24 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Guido van Rooij
>Release:        FreeBSD 5.3-STABLE i386
>Organization:
>Environment:
System: FreeBSD beck.gvr.org 5.3-STABLE FreeBSD 5.3-STABLE #5: Sun Feb 20 16:32:49 CET 2005     root@:/usr/src/sys/i386/compile/MOUSE  i386

USB:
usb0: <Intel 82801DB (ICH4) USB controller USB-A> on uhci0
usb0: USB revision 1.0
usb1: <Intel 82801DB (ICH4) USB controller USB-B> on uhci1
usb1: USB revision 1.0
usb2: <Intel 82801DB (ICH4) USB controller USB-C> on uhci2
usb2: USB revision 1.0
ehci_pci_attach: companion usb0
ehci_pci_attach: companion usb1
ehci_pci_attach: companion usb2
usb3: EHCI version 1.0
usb3: companion controllers, 2 ports each: usb0 usb1 usb2
usb3: <EHCI (generic) USB 2.0 controller> on ehci0
usb3: USB revision 2.0

Freshly supped on Feb 19
>Description:
	When I attach a gembird mp3 player, the system panics.
	kernel trace:
#23 0xc04c65dc in uhci_check_intr (sc=0xc1f38000, ii=0xc2aec66c)
    at ../../../dev/usb/uhci.c:1330
#24 0xc04c65ba in uhci_softintr (v=0xc1f38000) at ../../../dev/usb/uhci.c:1304
#25 0xc04d3093 in usb_schedsoftintr (bus=0x0) at ../../../dev/usb/usb.c:859
#26 0xc04c657b in uhci_intr1 (sc=0xc1f38000) at ../../../dev/usb/uhci.c:1274
#27 0xc04c63ed in uhci_intr (arg=0xc1f38000) at ../../../dev/usb/uhci.c:1189
#28 0xc051d4c7 in ithread_loop (arg=0xc1e75800)
    at ../../../kern/kern_intr.c:547
#29 0xc051c256 in fork_exit (callout=0xc051d323 <ithread_loop>, arg=0x0, 
    frame=0x0) at ../../../kern/kern_fork.c:806
#30 0xc06c4efc in fork_trampoline () at ../../../i386/i386/exception.s:209

(frames before #23 are because of entering ddb)

(kgdb) frame 23
#23 0xc04c65dc in uhci_check_intr (sc=0xc1f38000, ii=0xc2aec66c)
    at ../../../dev/usb/uhci.c:1330
1330            if (ii->xfer->status == USBD_CANCELLED ||
(kgdb) l
1325            if (ii == NULL) {
1326                    printf("uhci_check_intr: no ii? %p\n", ii);
1327                    return;
1328            }
1329    #endif
1330            if (ii->xfer->status == USBD_CANCELLED ||
1331                ii->xfer->status == USBD_TIMEOUT) {
1332                    DPRINTF(("uhci_check_intr: aborted xfer=%p\n", ii->xfer));
1333                    return;
1334            }

(kgdb) p *ii
$7 = {sc = 0xc1f38000, xfer = 0x0, stdstart = 0x0, stdend = 0x0, list = {
    le_next = 0x0, le_prev = 0x0}}

So somehow, xfer == NULL

>How-To-Repeat:
	Attach a gembird mp3 player
>Fix:

	


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


More information about the freebsd-bugs mailing list