On Mon, 14 Oct 2002, David Brownell wrote: > > But I believe the backtrace points to the bad context path, not the root > > cause which triggered the HC halt. > > Likely. If you can get me more information on that, let me know.
I think it's somehow related to the td processing. I'm getting a lot of "bad entry" messages from ohci-q with 2.5.42 and usbtest. With and without sglist. I've another piece of code which streams both in and out using a pool of urbs. It works 100% stable with 2.4.20-pre8 but usually fails with 2.5.42 within seconds reporting "bad entry". I't looks to me like some kind of donelist corruption but might be td hashbin or pci_pool as well. Maybe the output below would tell you something. It was obtained during re-enumeration after firmware download where a firmware bug caused the device to hang in the GetDescriptor request. I've no idea if this is related to Lars's problem, but I've also seen this happen during reboot with the FX+broken firmware still connected. Martin ------------------------ drivers/usb/core/hub.c: hub 3 port 2 connection change drivers/usb/core/hub.c: hub 3 port 2, portstatus 101, change 1, 12 Mb/s drivers/usb/core/hub.c: port 2, portstatus 101, change 0, 12 Mb/s drivers/usb/core/hub.c: port 2, portstatus 101, change 0, 12 Mb/s drivers/usb/core/hub.c: port 2, portstatus 101, change 0, 12 Mb/s drivers/usb/core/hub.c: port 2, portstatus 101, change 0, 12 Mb/s drivers/usb/core/hub.c: port 2, portstatus 111, change 0, 12 Mb/s drivers/usb/core/hub.c: port 2 of hub 3 not reset yet, waiting 10ms drivers/usb/core/hub.c: port 2, portstatus 103, change 10, 12 Mb/s drivers/usb/core/hub.c: new USB device 00:0c.0-3.2, assigned address 4 drivers/usb/core/message.c: usb_control/bulk_msg: timeout drivers/usb/host/ohci-dbg.c: UNLINK cb3a96dc dev:4,ep=0-I,CTRL,flags:0,len:0/8,stat:-2 drivers/usb/core/hcd.c: 00:0c.0: wait for giveback urb cb3a96dc drivers/usb/host/ohci-q.c: 00:0c.0 bad entry 3080000 drivers/usb/core/hcd.c: giveback urb cb3a96dc status -2 len 0 drivers/usb/core/message.c: usb_control/bulk_msg: timeout drivers/usb/host/ohci-dbg.c: UNLINK cb3a96dc dev:4,ep=0-I,CTRL,flags:0,len:0/8,stat:-2 drivers/usb/core/hcd.c: 00:0c.0: wait for giveback urb cb3a96dc drivers/usb/core/hcd.c: giveback urb cb3a96dc status -2 len 0 drivers/usb/host/ohci-hcd.c: OHCI Unrecoverable Error, 00:0c.0 disabled drivers/usb/host/ohci-dbg.c: OHCI controller 00:0c.0 state drivers/usb/host/ohci-dbg.c: OHCI 1.0, with legacy support registers drivers/usb/host/ohci-dbg.c: control: 0x0000009f HCFS=operational CLE IE PLE CBSR=3 drivers/usb/host/ohci-dbg.c: cmdstatus: 0x00000000 SOC=0 drivers/usb/host/ohci-dbg.c: intrstatus: 0x00000076 RHSC FNO UE SF WDH drivers/usb/host/ohci-dbg.c: intrenable: 0x80000012 MIE UE WDH drivers/usb/host/ohci-dbg.c: ed_controlhead 0b39c080 drivers/usb/host/ohci-dbg.c: hcca frame #3d46 drivers/usb/host/ohci-dbg.c: roothub.a: ff000203 POTPGT=255 NPS NDP=3 drivers/usb/host/ohci-dbg.c: roothub.b: 00000000 PPCM=0000 DR=0000 drivers/usb/host/ohci-dbg.c: roothub.status: 00000000 drivers/usb/host/ohci-dbg.c: 00:0c.0: roothub.portstatus [0] = 0x00000100 PPS drivers/usb/host/ohci-dbg.c: 00:0c.0: roothub.portstatus [1] = 0x00000100 PPS drivers/usb/host/ohci-dbg.c: 00:0c.0: roothub.portstatus [2] = 0x00000103 PPS PES CCS drivers/usb/host/ohci-hcd.c: USB HC reset_hc 00:0c.0: ctrl = 0x9f ; drivers/usb/core/hcd.c: shutdown 00:0c.0 urb cb3a96dc pipe 80000480, current status -115 drivers/usb/core/hcd.c: shutdown 00:0c.0 urb cb3a9674 pipe 40408280, current status -115 drivers/usb/core/hcd.c: shutdown 00:0c.0 urb cb3a9264 pipe 40408180, current status -115 drivers/usb/core/hcd.c: giveback urb cb3a9264 status -108 len 1 drivers/usb/host/ohci-hcd.c: 00:0c.0: stop reset controller (disabled) drivers/usb/host/ohci-dbg.c: OHCI controller 00:0c.0 state drivers/usb/host/ohci-dbg.c: OHCI 1.0, with legacy support registers drivers/usb/host/ohci-dbg.c: control: 0x00000000 HCFS=reset CBSR=0 drivers/usb/host/ohci-dbg.c: cmdstatus: 0x00000000 SOC=0 drivers/usb/host/ohci-dbg.c: intrstatus: 0x00000000 drivers/usb/host/ohci-dbg.c: intrenable: 0x80000000 MIE drivers/usb/host/ohci-dbg.c: hcca frame #3d46 drivers/usb/host/ohci-dbg.c: roothub.a: ff000203 POTPGT=255 NPS NDP=3 drivers/usb/host/ohci-dbg.c: roothub.b: 00000000 PPCM=0000 DR=0000 drivers/usb/host/ohci-dbg.c: roothub.status: 00000000 drivers/usb/host/ohci-dbg.c: 00:0c.0: roothub.portstatus [0] = 0x00000100 PPS drivers/usb/host/ohci-dbg.c: 00:0c.0: roothub.portstatus [1] = 0x00000100 PPS drivers/usb/host/ohci-dbg.c: 00:0c.0: roothub.portstatus [2] = 0x00000100 PPS Debug: sleeping function called from illegal context at include/asm/semaphore.h:119 Call Trace: [<c011a8f2>] __might_sleep+0x42/0x47 [<c017eead>] driverfs_remove_file+0x1d/0x80 [<cd072240>] dev_attr_async+0x0/0x10 [ohci-hcd] [<c01b6ca3>] device_remove_file+0x23/0x50 [<cd070cb3>] .LC128+0x0/0x6 [ohci-hcd] [<cd06ff62>] ohci_stop+0x72/0xc0 [ohci-hcd] [<cd072240>] dev_attr_async+0x0/0x10 [ohci-hcd] [<cd05647f>] usb_hc_died_Rsmp_66b09dab+0xff/0x106 [usbcore] [<cd05637c>] usb_hcd_irq_Rsmp_f6a60562+0x2c/0x30 [usbcore] [<c0109d6c>] handle_IRQ_event+0x2c/0x50 [<c010a021>] do_IRQ+0xe1/0x190 [<c01086a8>] common_interrupt+0x18/0x20 pci_pool_destroy 00:0c.0/ohci_td, cb39b000 busy pci_pool_destroy 00:0c.0/ohci_ed, cb39c000 busy usb: raced timeout, pipe 0x80000480 status -108 time left 0 drivers/usb/core/usb.c: USB device not accepting new address=4 (error=-108) drivers/usb/core/hub.c: usb_hub_port_status(00:0c.0-3) failed (err = -108) drivers/usb/core/hub.c: port 2 of hub 3 not enabled, trying reset again... drivers/usb/core/hub.c: usb_hub_port_status(00:0c.0-3) failed (err = -108) drivers/usb/core/hub.c: port 2 of hub 3 not enabled, trying reset again... drivers/usb/core/hub.c: usb_hub_port_status(00:0c.0-3) failed (err = -108) drivers/usb/core/hub.c: port 2 of hub 3 not enabled, trying reset again... drivers/usb/core/hub.c: usb_hub_port_status(00:0c.0-3) failed (err = -108) drivers/usb/core/hub.c: port 2 of hub 3 not enabled, trying reset again... drivers/usb/core/hub.c: usb_hub_port_status(00:0c.0-3) failed (err = -108) drivers/usb/core/hub.c: port 2 of hub 3 not enabled, trying reset again... drivers/usb/core/hub.c: Cannot enable port 2 of hub 3, disabling port. drivers/usb/core/hub.c: Maybe the USB cable is bad? drivers/usb/core/hub.c: cannot disable port 2 of hub 3 (err = -108) drivers/usb/core/hub.c: usb_hub_port_status(00:0c.0-3) failed (err = -108) drivers/usb/core/hub.c: usb_hub_port_status(00:0c.0-3) failed (err = -108) drivers/usb/core/hub.c: get_hub_status 3 failed ------------------------------------------------------- This sf.net email is sponsored by:ThinkGeek Welcome to geek heaven. http://thinkgeek.com/sf _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel