Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 Dec 2009 23:20:02 GMT
From:      Olivier Certner <olivier.certner@free.fr>
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: kern/141658: Kernel panics when inserting a USB key in a 4Gb laptop running 7.2-STABLE
Message-ID:  <200912152320.nBFNK2A1005094@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/141658; it has been noted by GNATS.

From: Olivier Certner <olivier.certner@free.fr>
To: bug-followup@freebsd.org
Cc:  
Subject: Re: kern/141658: Kernel panics when inserting a USB key in a 4Gb laptop running 7.2-STABLE
Date: Wed, 16 Dec 2009 00:06:39 +0100

 The output of the debugging session for the kernel panic:
 
 #2  0xffffffff802738d8 in panic (fmt=3DVariable "fmt" is not available.
 )
     at /usr/src/sys/kern/kern_shutdown.c:574
 #3  0xffffffff803ca6e6 in trap_fatal (frame=3D0xffffff807733ccc0, eva=3D656)
     at /usr/src/sys/amd64/amd64/trap.c:770
 #4  0xffffffff803ca96e in trap_pfault (frame=3D0xffffff807733ccc0, usermode=
 =3D0)
     at /usr/src/sys/amd64/amd64/trap.c:686
 #5  0xffffffff803cb3f3 in trap (frame=3D0xffffff807733ccc0)
     at /usr/src/sys/amd64/amd64/trap.c:457
 #6  0xffffffff803b4e93 in calltrap ()
     at /usr/src/sys/amd64/amd64/exception.S:218
 #7  0xffffffff8020257a in usb_transfer_complete (xfer=3D0xffffff00038de800)
     at /usr/src/sys/dev/usb/usbdi.c:949
 #8  0xffffffff80202877 in usbd_start_transfer (arg=3DVariable "arg" is not=
 =20
 availab
 le.
 )
     at /usr/src/sys/dev/usb/usbdi.c:398
 #9  0xffffffff803b31d5 in bus_dmamap_load (dmat=3D0xffffff000390d900,
     map=3D0xffffff0003d2ad80, buf=3D0xffffff807733cff0, buflen=3D0,
     callback=3D0xffffffff802026c0 <usbd_start_transfer>,
     callback_arg=3D0xffffff00038de800, flags=3D0)
     at /usr/src/sys/amd64/amd64/busdma_machdep.c:738
 #10 0xffffffff80202cfe in usbd_transfer (xfer=3D0xffffff00038de800)
     at /usr/src/sys/dev/usb/usbdi.c:312
 #11 0xffffffff80202f2e in usbd_sync_transfer (xfer=3DVariable "xfer" is not=
 =20
 availa
 ble.
 )
     at /usr/src/sys/dev/usb/usbdi.c:408
 #12 0xffffffff80202fc6 in usbd_do_request_flags_pipe (dev=3D0xffffff0003c8f=
 e00,
     pipe=3D0xffffff0003a0ac00, req=3D0xffffff807733cfa0, data=3D0xffffff807=
 733cff0,
     flags=3DVariable "flags" is not available.
 ) at /usr/src/sys/dev/usb/usbdi.c:1100
 #13 0xffffffff80203105 in usbd_do_request_flags (dev=3DVariable "dev" is no=
 t=20
 avail
 able.
 )
     at /usr/src/sys/dev/usb/usbdi.c:1070
 #14 0xffffffff80200f08 in usbd_get_string_desc (dev=3D0xffffff0003c8fe00,
     sindex=3DVariable "sindex" is not available.
 ) at /usr/src/sys/dev/usb/usb_subr.c:171
 #15 0xffffffff8020230d in usbd_get_string (dev=3D0xffffff0003c8fe00, si=3D1,
     buf=3D0xffffff807733d1f0 "", len=3D128) at /usr/src/sys/dev/usb/usbdi.c=
 :1353
 #16 0xffffffff80200114 in usbd_devinfo_vp (dev=3D0xffffff0003c8fe00,
     v=3D0xffffff807733d1f0 "", p=3D0xffffff807733d170 " =B7\220\003",=20
 usedev=3DVariable
 "usedev" is not available.
 )
     at /usr/src/sys/dev/usb/usb_subr.c:216
 #17 0xffffffff80200d46 in usbd_devinfo (dev=3D0xffffff0003c8fe00, showclass=
 =3D1,
     cp=3D0xffffff00039d9c00 "") at /usr/src/sys/dev/usb/usb_subr.c:281
 #18 0xffffffff8020172b in usbd_new_device (parent=3D0xffffff0003930200,
     bus=3D0xffffff00038f3000, depth=3DVariable "depth" is not available.
 ) at /usr/src/sys/dev/usb/usb_subr.c:861
 #19 0xffffffff801fdb85 in uhub_explore (dev=3D0xffffff00038c5100)
     at /usr/src/sys/dev/usb/uhub.c:523
 #20 0xffffffff801fe098 in usb_discover (v=3DVariable "v" is not available.
 ) at /usr/src/sys/dev/usb/usb.c:724
 #21 0xffffffff801ff0bf in usb_event_thread (arg=3DVariable "arg" is not=20
 available.
 
 )
     at /usr/src/sys/dev/usb/usb.c:440
 #22 0xffffffff8024d40b in fork_exit (
     callout=3D0xffffffff801ff020 <usb_event_thread>, arg=3D0xffffff00039291=
 00,
     frame=3D0xffffff807733dc80) at /usr/src/sys/kern/kern_fork.c:811
 #23 0xffffffff803b527e in fork_trampoline ()
     at /usr/src/sys/amd64/amd64/exception.S:554
 #24 0x0000000000000000 in ?? ()
 #25 0x0000000000000000 in ?? ()
 #26 0x0000000000000001 in ?? ()
 #27 0x0000000000000000 in ?? ()
 #28 0x0000000000000000 in ?? ()
 #29 0x0000000000000000 in ?? ()
 #30 0x0000000000000000 in ?? ()
 #31 0x0000000000000000 in ?? ()
 #32 0x0000000000000000 in ?? ()
 #33 0x0000000000000000 in ?? ()
 #34 0x0000000000000000 in ?? ()
 #35 0x0000000000000000 in ?? ()
 #36 0x0000000000000000 in ?? ()
 #37 0x0000000000000000 in ?? ()
 #38 0x0000000000000000 in ?? ()
 #39 0x0000000000000000 in ?? ()
 #40 0x0000000000000000 in ?? ()
 #41 0x0000000000000000 in ?? ()
 #42 0x0000000000000000 in ?? ()
 #43 0x0000000000000000 in ?? ()
 #44 0x0000000000000000 in ?? ()
 #45 0x0000000000000000 in ?? ()
 #46 0x0000000000000000 in ?? ()
 #47 0x0000000000000000 in ?? ()
 #48 0x0000000000814000 in ?? ()
 #49 0xffffffff805ce348 in sleepq_chains ()
 #50 0xffffffff805beac0 in tdg_maxid ()
 #51 0xffffff000390b720 in ?? ()
 #52 0xffffff000390ba70 in ?? ()
 #53 0xffffff807733cd80 in ?? ()
 #54 0xffffff807733cd18 in ?? ()
 #55 0xffffff0001422390 in ?? ()
 #56 0xffffffff80296c0e in sched_switch (td=3D0x0, newtd=3D0xffffff000392910=
 0,
     flags=3DVariable "flags" is not available.
 ) at /usr/src/sys/kern/sched_ule.c:1938
 (kgdb) f 7
 #7  0xffffffff8020257a in usb_transfer_complete (xfer=3D0xffffff00038de800)
     at /usr/src/sys/dev/usb/usbdi.c:949
 949                     STAILQ_REMOVE_HEAD(&pipe->queue, next);
 (kgdb) print pipe
 $1 =3D 0xffffff0003a0ac00
 (kgdb) print * pipe
 $2 =3D {iface =3D 0x0, device =3D 0xffffff0003c8fe00,
   endpoint =3D 0xffffff0003c8fe38, refcnt =3D 1, running =3D 0 '\0',
   aborting =3D 0 '\0', queue =3D {stqh_first =3D 0x0,
     stqh_last =3D 0xffffff0003a0ac20}, next =3D {le_next =3D 0x0,
     le_prev =3D 0x401990}, intrxfer =3D 0x0, repeat =3D 0 '\0', interval =
 =3D -1,
   methods =3D 0xffffffff805576e0}
 (kgdb) l
 944     #ifdef DIAGNOSTIC
 945                     xfer->busy_free =3D XFER_BUSY;
 946     #endif
 947                     KASSERT(STAILQ_FIRST(&pipe->queue) =3D=3D xfer,
 948                         ("usb_transfer_complete: bad dequeue"));
 949                     STAILQ_REMOVE_HEAD(&pipe->queue, next);
 950             }
 951             DPRINTFN(5,("usb_transfer_complete: repeat=3D%d new head=3D=
 %p\n",
 952                         repeat, STAILQ_FIRST(&pipe->queue)));
 953
 (kgdb) f 8
 #8  0xffffffff80202877 in usbd_start_transfer (arg=3DVariable "arg" is not=
 =20
 availab
 le.
 )
     at /usr/src/sys/dev/usb/usbdi.c:398
 398                     usb_transfer_complete(xfer);
 (kgdb) print xfer
 $3 =3D 0xffffff00038de800
 (kgdb) print * xfer
 $4 =3D {pipe =3D 0xffffff0003a0ac00, priv =3D 0x0, buffer =3D 0xffffff80773=
 3cff0,
   length =3D 18, actlen =3D 0, flags =3D 6, timeout =3D 5000, status =3D US=
 BD_NOMEM,
   callback =3D 0, done =3D 1 '\001', request =3D {bmRequestType =3D 128 '\2=
 00',
     bRequest =3D 6 '\006', wValue =3D "\001\003", wIndex =3D "\t\004",
     wLength =3D "\022"}, frlengths =3D 0x0, nframes =3D 0,
   device =3D 0xffffff0003c8fe00, dmamap =3D {segs =3D {{ds_addr =3D 2251980=
 8,
         ds_len =3D 16}, {ds_addr =3D 22487040, ds_len =3D 2}, {ds_addr =3D =
 0,
         ds_len =3D 0} <repeats 31 times>}, nsegs =3D 2,
     map =3D 0xffffff0003d2ad80}, allocbuf =3D 0x0, rqflags =3D 1, next =3D {
     stqe_next =3D 0x0}, hcpriv =3D 0x0, timeout_handle =3D {c_links =3D {sl=
 e =3D {
         sle_next =3D 0x0}, tqe =3D {tqe_next =3D 0x0, tqe_prev =3D 0x0}}, c=
 _time =3D 0,
     c_arg =3D 0x0, c_func =3D 0, c_mtx =3D 0xffffffff805b7280, c_flags =3D =
 0}}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200912152320.nBFNK2A1005094>