usb/76555: PNY USB DISK 2.0 USB thumbdrive causes won't work properly with ehci.

Steve Hodgson steve at acidy.com
Fri Jan 21 15:30:28 PST 2005


>Number:         76555
>Category:       usb
>Synopsis:       PNY USB DISK 2.0 USB thumbdrive causes won't work properly with ehci.
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    freebsd-usb
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Jan 21 23:30:27 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Steve Hodgson
>Release:        5.3-STABLE. cvsup circa 10 January
>Organization:
>Environment:
FreeBSD congo.princess.local 5.3-STABLE FreeBSD 5.3-STABLE #0: Thu Jan 20 19:35:36 GMT 2005     root at congo.princess.local:/usr/obj/usr/src/sys/CONGO  i386
>Description:
After enabling hw.usb.debug=3, I plugged in the USB drive and got the following in /var/log/messages

================================
Jan 21 22:26:23 congo kernel: usb_event_thread: woke up
Jan 21 22:26:23 congo kernel: usb_discover
Jan 21 22:26:23 congo kernel: usb_event_thread: woke up
Jan 21 22:26:23 congo kernel: usb_discover
Jan 21 22:26:23 congo kernel: usb_event_thread: woke up
Jan 21 22:26:23 congo kernel: usb_discover
Jan 21 22:27:22 congo kernel: usb_needs_explore
Jan 21 22:27:22 congo kernel: usb_event_thread: woke up
Jan 21 22:27:22 congo kernel: usb_discover
Jan 21 22:27:22 congo kernel: usbd_reset_port: port 3 reset done, error=NORMAL_COMPLETION
Jan 21 22:27:23 congo kernel: usbd_new_device bus=0xc1db5000 port=3 depth=1 speed=3
Jan 21 22:27:23 congo kernel: usbd_new_device: high speed port 2
Jan 21 22:27:23 congo kernel: usbd_setup_pipe: dev=0xc2284600 iface=0 ep=0xc2284624 pipe=0xc2284604
Jan 21 22:27:23 congo kernel: usb_allocmem: large alloc 4032
Jan 21 22:27:23 congo kernel: usbd_new_device: adding unit addr=2, rev=200, class=0, subclass=0, protocol=0, maxpacket=64, len=18, speed=3
Jan 21 22:27:23 congo kernel: usbd_new_device: new dev (addr 2), dev=0xc2284600, parent=0xc1df5900
Jan 21 22:27:22 congo kernel: usb_needs_explore
Jan 21 22:27:22 congo kernel: usb_event_thread: woke up
Jan 21 22:27:22 congo kernel: usb_discover
Jan 21 22:27:22 congo kernel: usbd_reset_port: port 3 reset done, error=NORMAL_COMPLETION
Jan 21 22:27:23 congo kernel: usbd_new_device bus=0xc1db5000 port=3 depth=1 speed=3
Jan 21 22:27:23 congo kernel: usbd_new_device: high speed port 2
Jan 21 22:27:23 congo kernel: usbd_setup_pipe: dev=0xc2284600 iface=0 ep=0xc2284624 pipe=0xc2284604
Jan 21 22:27:23 congo kernel: usb_allocmem: large alloc 4032
Jan 21 22:27:23 congo kernel: usbd_new_device: adding unit addr=2, rev=200, class=0, subclass=0, protocol=0, maxpacket=64, len=18, speed=3
Jan 21 22:27:23 congo kernel: usbd_new_device: new dev (addr 2), dev=0xc2284600, parent=0xc1df5900
Jan 21 22:27:23 congo kernel: usbd_probe_and_attach: trying device specific drivers
Jan 21 22:27:23 congo kernel: usbd_probe_and_attach: no device specific driver found
Jan 21 22:27:23 congo kernel: usbd_probe_and_attach: looping over 1 configurations
Jan 21 22:27:23 congo kernel: usbd_probe_and_attach: trying config idx=0
Jan 21 22:27:23 congo kernel: usbd_set_config_index: (addr 1) cno=2 attr=0x80, selfpowered=0, power=500
Jan 21 22:27:23 congo kernel: usbd_set_config_index: set config 1
Jan 21 22:27:23 congo kernel: umass0: PNY USB DISK 2.0, rev 2.00/0.50, addr 2
Jan 21 22:27:23 congo kernel: umass0: SCSI over Bulk-Only; quirks = 0x0080
Jan 21 22:27:23 congo kernel: usbd_setup_pipe: dev=0xc2284600 iface=0xc21d0d40 ep=0xc2036878 pipe=0xd44c6360
Jan 21 22:27:23 congo kernel: usbd_setup_pipe: dev=0xc2284600 iface=0xc21d0d40 ep=0xc2036870 pipe=0xd44c6360
Jan 21 22:27:23 congo kernel: umass0:2:0:-1: Attached to scbus2
Jan 21 22:27:23 congo kernel: usb_allocmem: large alloc 255
Jan 21 22:27:23 congo kernel: usb_freemem: large free
Jan 21 22:27:23 congo kernel: da0 at umass-sim0 bus 0 target 0 lun 0
Jan 21 22:27:23 congo kernel: da0: < USB DISK 2.0 1.15> Removable Direct Access SCSI-0 device
Jan 21 22:27:23 congo kernel: da0: 1.000MB/s transfers
Jan 21 22:27:23 congo kernel: da0: 248MB (507904 512 byte sectors: 64H 32S/T 248C)
Jan 21 22:27:23 congo kernel: usb_allocmem: large alloc 512
Jan 21 22:27:23 congo kernel: usb_freemem: large free
Jan 21 22:27:23 congo kernel: umass0: Phase Error, residue = 0
Jan 21 22:27:23 congo kernel: (da0:umass-sim0:0:0:0): Synchronize cache failed, status == 0x4, scsi status == 0x0
Jan 21 22:27:23 congo kernel: usb_allocmem: large alloc 512
Jan 21 22:27:23 congo kernel: usb_freemem: large free
Jan 21 22:27:23 congo kernel: usb_allocmem: large alloc 512
Jan 21 22:27:23 congo kernel: usb_freemem: large free
Jan 21 22:27:23 congo kernel: umass0: Phase Error, residue = 0
Jan 21 22:27:23 congo kernel: (da0:umass-sim0:0:0:0): Synchronize cache failed, status == 0x4, scsi status == 0x0
Jan 21 22:27:23 congo kernel: usb_allocmem: large alloc 1024
Jan 21 22:27:23 congo kernel: usb_freemem: large free
Jan 21 22:27:23 congo kernel: umass0: Phase Error, residue = 0
Jan 21 22:27:23 congo kernel: (da0:umass-sim0:0:0:0): Synchronize cache failed, status == 0x4, scsi status == 0x0
Jan 21 22:27:23 congo kernel: umass0: Phase Error, residue = 0
Jan 21 22:27:23 congo kernel: (da0:umass-sim0:0:0:0): Synchronize cache failed, status == 0x4, scsi status == 0x0
Jan 21 22:27:23 congo kernel: umass0: Phase Error, residue = 0
Jan 21 22:27:23 congo kernel: (da0:umass-sim0:0:0:0): Synchronize cache failed, status == 0x4, scsi status == 0x0
Jan 21 22:27:23 congo kernel: umass0: Phase Error, residue = 0
Jan 21 22:27:23 congo kernel: (da0:umass-sim0:0:0:0): Synchronize cache failed, status == 0x4, scsi status == 0x0
Jan 21 22:27:23 congo kernel: umass0: Phase Error, residue = 0
Jan 21 22:27:23 congo kernel: (da0:umass-sim0:0:0:0): Synchronize cache failed, status == 0x4, scsi status == 0x0
Jan 21 22:27:23 congo kernel: usb_event_thread: woke up
Jan 21 22:27:23 congo kernel: usb_discover
Jan 21 22:27:23 congo kernel: usb_event_thread: woke up
Jan 21 22:27:23 congo kernel: usb_discover
====================

At which point a device /dev/da0 and /dev/da0s1 appeared.
Attempted a mount_msdosfs /dev/da0s1, and got the following messages

====================
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 2048
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
Jan 21 22:27:46 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:27:46 congo kernel: usb_freemem: large free
==================

At this point nothing happens, and mount appears frozen. Waiting, I get...

==================
Jan 21 22:28:24 congo kernel: usb_event_thread: woke up
Jan 21 22:28:24 congo kernel: usb_discover
Jan 21 22:28:24 congo kernel: usb_event_thread: woke up
Jan 21 22:28:24 congo kernel: usb_discover
Jan 21 22:28:24 congo kernel: usb_event_thread: woke up
Jan 21 22:28:24 congo kernel: usb_discover
==================

At which point I change terminal and kill -9 mount. And then over the next minute I get....

===================
Jan 21 22:28:52 congo kernel: usb_add_task: task=0xc24e756c
Jan 21 22:28:52 congo kernel: usb_task_thread: woke up task=0xc24e756c
Jan 21 22:28:52 congo kernel: umass0: BBB reset failed, TIMEOUT
Jan 21 22:28:52 congo kernel: usb_allocmem: large alloc 4096
Jan 21 22:29:24 congo kernel: usb_event_thread: woke up
Jan 21 22:29:24 congo kernel: usb_discover
Jan 21 22:29:24 congo kernel: usb_event_thread: woke up
Jan 21 22:29:24 congo kernel: usb_discover
Jan 21 22:29:24 congo kernel: usb_event_thread: woke up
Jan 21 22:29:24 congo kernel: usb_discover
====================

Until I then pull out the usb drive, at which point I get the following from DDB

=====================
umass0: at uhub2 port 3 (addr 2) disconnected
(da0:umass-sim0:0:0:0): Sybchronize cache failed, status=0x39, scsi status == 0x0
(da0:umass-sim0:0:0:0): removing device entry
panic: umass0: Unknown state 1
kdb_backtrace(c072fe45,c078c360,c07256c9,d338bb44,d338bb4c) at kdb_backtrace+0x2e
panic()...
umass_bbb_state(c24c9c00,c22f9800,d,d338bbd7,6e) at umass_bbb_state+0x8b4
usb_transfer_complete(c24c9c00,80,c071ad9c,48,c0720326) at usb_transfer_complete+0x1aa
ehci_idone(c24c9c00,c24c9c6c,c052c5da) at ehci_idone+0xe2e
ehci_check_intr(c1db50000,c24c9c00,4b9626a,c1db5000,2) at ehci_check_intr+0xff
ehci_softintr(c1db5000,0) at ehci_softintr+0x5a
usb_schedsoftintr(c1db5000,0,4bf,4d563b4e,82e6e0b4) at usb_scedsoftintr+0x39
ehci_intr1(c1db5000,c1dfb140,4,d338bd14,c04ff5d0) at ehci_intr1+0x174
ehci_intr(c1db5000,0,0,0,0) at ehci_intr+0x8f
ithread_loop(c1cec380,d338bd48,0,0,0) at ithread_loop+0x1a0
..
--- trap 0x1, eip = 0, esp = 0xd338bd7c, ebp = 0 ---
=======================

I ran the dumped core file through kgdb and got the following...

=======================
#6  0xc06eccaa in trap (frame=
      {tf_fs = 24, tf_es = 16, tf_ds = 16, tf_edi = 1, tf_esi = -1066248503, tf_ebp = -751256824, tf_isp = -751256852, tf_ebx = -751256764, tf_edx = 1, tf_ecx = -1052684288, tf_eax = 18, tf_trapno = 3, tf_err = 0, tf_eip = -1068281968, tf_cs = 8, tf_eflags = 642, tf_esp = -1066200286, tf_ss = -1066206077})
    at /usr/src/sys/i386/i386/trap.c:576
#7  0xc06da77a in calltrap () at /usr/src/sys/i386/i386/exception.s:140
#8  0x00000018 in ?? ()
#9  0x00000010 in ?? ()
#10 0x00000010 in ?? ()
#11 0x00000001 in ?? ()
#12 0xc07256c9 in ?? ()
#13 0xd338bb08 in ?? ()
#14 0xd338baec in ?? ()
#15 0xd338bb44 in ?? ()
#16 0x00000001 in ?? ()
#17 0xc1415000 in ?? ()
#18 0x00000012 in ?? ()
#19 0x00000003 in ?? ()
#20 0x00000000 in ?? ()
#21 0xc0534f90 in kdb_enter (msg=0x0) at cpufunc.h:56
#22 0xc0518acc in panic (fmt=0xc07256c9 "%s: Unknown state %d") at /usr/src/sys/kern/kern_shutdown.c:550
#23 0xc04b30e4 in umass_bbb_state (xfer=0xc24c9c00, priv=0xc22f9800, err=USBD_IOERROR) at /usr/src/sys/dev/usb/umass.c:1694
#24 0xc04bbc4a in usb_transfer_complete (xfer=0xc24c9c00) at /usr/src/sys/dev/usb/usbdi.c:837
#25 0xc0499ea2 in ehci_idone (ex=0xc24c9c00) at /usr/src/sys/dev/usb/ehci.c:874
#26 0xc0499baf in ehci_check_intr (sc=0xc1db5000, ex=0xc24c9c00) at /usr/src/sys/dev/usb/ehci.c:759
#27 0xc0499a9a in ehci_softintr (v=0xc1db5000) at /usr/src/sys/dev/usb/ehci.c:699
#28 0xc04b7a99 in usb_schedsoftintr (bus=0xc1db5000) at /usr/src/sys/dev/usb/usb.c:859
#29 0xc04997c4 in ehci_intr1 (sc=0xc1db5000) at /usr/src/sys/dev/usb/ehci.c:599
#30 0xc049963f in ehci_intr (v=0xc1db5000) at /usr/src/sys/dev/usb/ehci.c:558
#31 0xc04ff5d0 in ithread_loop (arg=0xc1cec380) at /usr/src/sys/kern/kern_intr.c:547
#32 0xc04fe3af in fork_exit (callout=0xc04ff430 <ithread_loop>, arg=0x0, frame=0x0) at /usr/src/sys/kern/kern_fork.c:807
#33 0xc06da7dc in fork_trampoline () at /usr/src/sys/i386/i386/exception.s:209
(kgdb) frame 24
#24 0xc04bbc4a in usb_transfer_complete (xfer=0xc24c9c00) at /usr/src/sys/dev/usb/usbdi.c:837
837                     xfer->callback(xfer, xfer->priv, xfer->status);
(kgdb) print xfer
$2 = 0xc24c9c00
(kgdb) print *xfer
$3 = {pipe = 0xc20e9880, priv = 0xc22f9800, buffer = 0x0, length = 0, actlen = 0, flags = 0, timeout = 305000, status = USBD_IOERROR,
  callback = 0xc04b2830 <umass_bbb_state>, done = 1 '\001', request = {bmRequestType = 2 '\002', bRequest = 1 '\001', wValue = "\000", wIndex = "\201",
    wLength = "\000"}, frlengths = 0x0, nframes = 0, device = 0xc2284600, dmabuf = {block = 0x0, offs = 0, len = 0}, rqflags = 1, next = {stqe_next = 0xc22f9b00},
  hcpriv = 0x0, timeout_handle = {c_links = {sle = {sle_next = 0x0}, tqe = {tqe_next = 0x0, tqe_prev = 0xcb5fe000}}, c_time = 1518604, c_arg = 0xc24c9c00,
    c_func = 0, c_flags = 0}}
(kgdb) frame 26
#26 0xc0499baf in ehci_check_intr (sc=0xc1db5000, ex=0xc24c9c00) at /usr/src/sys/dev/usb/ehci.c:759
759             ehci_idone(ex);
(kgdb) print sc
$5 = (ehci_softc_t *) 0xc1db5000
(kgdb) print *sc
$6 = {sc_bus = {bdev = 0xc1df6080, methods = 0xc0755eec, pipe_size = 80, root_hub = 0xc1df5a00, devices = {0x0, 0xc1df5a00, 0xc2284600, 0x0 <repeats 125 times>},
    needs_explore = 0 '\0', use_polling = 0 '\0', usbctl = 0xc1de7b00, stats = {uds_requests = {109, 0, 225, 2}}, intr_context = 2, no_intrs = 284, usbrev = 4,
    dmatag = 0x0}, sc_flags = 1, iot = 1, ioh = 3561963520, sc_size = 0, ih = 0xc1dfb140, io_res = 0xc1ddce80, irq_res = 0xc1dfb180, sc_offs = 32,
  sc_vendor = "nVidia\000\000\000\000\000\000\000\000\000", sc_id_vendor = 0, sc_cmd = 0, sc_ncomp = 2, sc_npcomp = 4, sc_comps = {0xc1de3dc0, 0xc1de34c0, 0x0,
    0x0, 0x0, 0x0, 0x0, 0x0}, sc_fldma = {block = 0xc1dfb100, offs = 0, len = 4096}, sc_flist = 0xc1de9000, sc_flsize = 1024, sc_islots = {{sqh = 0xc1de8f60}, {
      sqh = 0xc1de8f00}, {sqh = 0xc1de8ea0}, {sqh = 0xc1de8e40}, {sqh = 0xc1de8de0}, {sqh = 0xc1de8d80}, {sqh = 0xc1de8d20}, {sqh = 0xc1de8cc0}, {
      sqh = 0xc1de8c60}, {sqh = 0xc1de8c00}, {sqh = 0xc1de8ba0}, {sqh = 0xc1de8b40}, {sqh = 0xc1de8ae0}, {sqh = 0xc1de8a80}, {sqh = 0xc1de8a20}, {
      sqh = 0xc1de89c0}, {sqh = 0xc1de8960}, {sqh = 0xc1de8900}, {sqh = 0xc1de88a0}, {sqh = 0xc1de8840}, {sqh = 0xc1de87e0}, {sqh = 0xc1de8780}, {
      sqh = 0xc1de8720}, {sqh = 0xc1de86c0}, {sqh = 0xc1de8660}, {sqh = 0xc1de8600}, {sqh = 0xc1de85a0}, {sqh = 0xc1de8540}, {sqh = 0xc1de84e0}, {
      sqh = 0xc1de8480}, {sqh = 0xc1de8420}, {sqh = 0xc1de83c0}, {sqh = 0xc1de8360}, {sqh = 0xc1de8300}, {sqh = 0xc1de82a0}, {sqh = 0xc1de8240}, {
      sqh = 0xc1de81e0}, {sqh = 0xc1de8180}, {sqh = 0xc1de8120}, {sqh = 0xc1de80c0}, {sqh = 0xc1de8060}, {sqh = 0xc1de8000}, {sqh = 0xc1e07f60}, {
      sqh = 0xc1e07f00}, {sqh = 0xc1e07ea0}, {sqh = 0xc1e07e40}, {sqh = 0xc1e07de0}, {sqh = 0xc1e07d80}, {sqh = 0xc1e07d20}, {sqh = 0xc1e07cc0}, {
      sqh = 0xc1e07c60}, {sqh = 0xc1e07c00}, {sqh = 0xc1e07ba0}, {sqh = 0xc1e07b40}, {sqh = 0xc1e07ae0}, {sqh = 0xc1e07a80}, {sqh = 0xc1e07a20}, {
      sqh = 0xc1e079c0}, {sqh = 0xc1e07960}, {sqh = 0xc1e07900}, {sqh = 0xc1e078a0}, {sqh = 0xc1e07840}, {sqh = 0xc1e077e0}, {sqh = 0xc1e07780}, {
      sqh = 0xc1e07720}, {sqh = 0xc1e076c0}, {sqh = 0xc1e07660}, {sqh = 0xc1e07600}, {sqh = 0xc1e075a0}, {sqh = 0xc1e07540}, {sqh = 0xc1e074e0}, {
      sqh = 0xc1e07480}, {sqh = 0xc1e07420}, {sqh = 0xc1e073c0}, {sqh = 0xc1e07360}, {sqh = 0xc1e07300}, {sqh = 0xc1e072a0}, {sqh = 0xc1e07240}, {
      sqh = 0xc1e071e0}, {sqh = 0xc1e07180}, {sqh = 0xc1e07120}, {sqh = 0xc1e070c0}, {sqh = 0xc1e07060}, {sqh = 0xc1e07000}, {sqh = 0xc1e06f60}, {
      sqh = 0xc1e06f00}, {sqh = 0xc1e06ea0}, {sqh = 0xc1e06e40}, {sqh = 0xc1e06de0}, {sqh = 0xc1e06d80}, {sqh = 0xc1e06d20}, {sqh = 0xc1e06cc0}, {
      sqh = 0xc1e06c60}, {sqh = 0xc1e06c00}, {sqh = 0xc1e06ba0}, {sqh = 0xc1e06b40}, {sqh = 0xc1e06ae0}, {sqh = 0xc1e06a80}, {sqh = 0xc1e06a20}, {
      sqh = 0xc1e069c0}, {sqh = 0xc1e06960}, {sqh = 0xc1e06900}, {sqh = 0xc1e068a0}, {sqh = 0xc1e06840}, {sqh = 0xc1e067e0}, {sqh = 0xc1e06780}, {
      sqh = 0xc1e06720}, {sqh = 0xc1e066c0}, {sqh = 0xc1e06660}, {sqh = 0xc1e06600}, {sqh = 0xc1e065a0}, {sqh = 0xc1e06540}, {sqh = 0xc1e064e0}, {
      sqh = 0xc1e06480}, {sqh = 0xc1e06420}, {sqh = 0xc1e063c0}, {sqh = 0xc1e06360}, {sqh = 0xc1e06300}, {sqh = 0xc1e062a0}, {sqh = 0xc1e06240}, {
      sqh = 0xc1e061e0}, {sqh = 0xc1e06180}, {sqh = 0xc1e06120}, {sqh = 0xc1e060c0}, {sqh = 0xc1e06060}, {sqh = 0xc1e06000}, {sqh = 0xc1e05f60}, {
      sqh = 0xc1e05f00}, {sqh = 0xc1e05ea0}, {sqh = 0xc1e05e40}, {sqh = 0xc1e05de0}, {sqh = 0xc1e05d80}, {sqh = 0xc1e05d20}, {sqh = 0xc1e05cc0}, {
      sqh = 0xc1e05c60}, {sqh = 0xc1e05c00}, {sqh = 0xc1e05ba0}, {sqh = 0xc1e05b40}, {sqh = 0xc1e05ae0}, {sqh = 0xc1e05a80}, {sqh = 0xc1e05a20}, {
      sqh = 0xc1e059c0}, {sqh = 0xc1e05960}, {sqh = 0xc1e05900}, {sqh = 0xc1e058a0}, {sqh = 0xc1e05840}, {sqh = 0xc1e057e0}, {sqh = 0xc1e05780}, {
      sqh = 0xc1e05720}, {sqh = 0xc1e056c0}, {sqh = 0xc1e05660}, {sqh = 0xc1e05600}, {sqh = 0xc1e055a0}, {sqh = 0xc1e05540}, {sqh = 0xc1e054e0}, {
      sqh = 0xc1e05480}, {sqh = 0xc1e05420}, {sqh = 0xc1e053c0}, {sqh = 0xc1e05360}, {sqh = 0xc1e05300}, {sqh = 0xc1e052a0}, {sqh = 0xc1e05240}, {
      sqh = 0xc1e051e0}, {sqh = 0xc1e05180}, {sqh = 0xc1e05120}, {sqh = 0xc1e050c0}, {sqh = 0xc1e05060}, {sqh = 0xc1e05000}, {sqh = 0xc1e04f60}, {
      sqh = 0xc1e04f00}, {sqh = 0xc1e04ea0}, {sqh = 0xc1e04e40}, {sqh = 0xc1e04de0}, {sqh = 0xc1e04d80}, {sqh = 0xc1e04d20}, {sqh = 0xc1e04cc0}, {
      sqh = 0xc1e04c60}, {sqh = 0xc1e04c00}, {sqh = 0xc1e04ba0}, {sqh = 0xc1e04b40}, {sqh = 0xc1e04ae0}, {sqh = 0xc1e04a80}, {sqh = 0xc1e04a20}, {
      sqh = 0xc1e049c0}, {sqh = 0xc1e04960}, {sqh = 0xc1e04900}, {sqh = 0xc1e048a0}, {sqh = 0xc1e04840}, {sqh = 0xc1e047e0}, {sqh = 0xc1e04780}, {
      sqh = 0xc1e04720}, {sqh = 0xc1e046c0}, {sqh = 0xc1e04660}, {sqh = 0xc1e04600}, {sqh = 0xc1e045a0}, {sqh = 0xc1e04540}, {sqh = 0xc1e044e0}, {
      sqh = 0xc1e04480}, {sqh = 0xc1e04420}, {sqh = 0xc1e043c0}...}, sc_intrhead = {lh_first = 0xc24c9c00}, sc_freeqhs = 0xc1e02d80, sc_freeqtds = 0xc2516f60,
  sc_noport = 6, sc_addr = 1 '\001', sc_conf = 1 '\001', sc_intrxfer = 0xc1dd4e00, sc_isreset = 0 '\0', sc_eintrs = 51, sc_async_head = 0xc1e02e40,
  sc_free_xfers = {stqh_first = 0xc22f9500, stqh_last = 0xc24c9e4c}, sc_doorbell_lock = {lk_interlock = 0xc078b950, lk_flags = 1024, lk_sharecount = 0,
    lk_waitcount = 0, lk_exclusivecount = 1, lk_prio = 84, lk_wmesg = 0xc07200b4 "ehcidb", lk_timo = 0, lk_lockholder = 0xfffffffe, lk_newlock = 0x0},
  sc_tmo_pcd = {c_links = {sle = {sle_next = 0xc1d65f24}, tqe = {tqe_next = 0xc1d65f24, tqe_prev = 0xcb5ec3f8}}, c_time = 1214603, c_arg = 0xc1db5000,
    c_func = 0xc0499930 <ehci_pcd_enable>, c_flags = 6}, sc_child = 0x0, sc_dying = 0 '\0'}

========================



>How-To-Repeat:
Plugin a PNY USB DISK 2.0 usb thumbdrive into a 5.3-STABLE machine with ehci compiled in, attempt to mount the drive then kill mount, then unplug the drive
>Fix:
      
>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-usb mailing list