Hi Alan, Oliver, On Mon, Jul 20, 2009 at 4:40 PM, Alan Stern<stern@xxxxxxxxxxxxxxxxxxx> wrote: > On Mon, 20 Jul 2009, Oliver Neukum wrote: > >> Am Montag, 20. Juli 2009 09:56:48 schrieb Manuel Lauss: >> > Hi Oliver, >> > >> > While testing a CDC-ACM usb device I encoutered these warnings when >> > closing the ttyACM device: >> > >> > WARNING: at linux-2.6.git/drivers/usb/host/ehci-hcd.c:908 >> > ehci_urb_dequeue+0x190/0x198() >> > Modules linked in: >> > Call Trace: >> > [<80107158>] dump_stack+0x8/0x34 >> > [<8012a468>] warn_slowpath_common+0x70/0xb0 >> > [<802e3968>] ehci_urb_dequeue+0x190/0x198 >> > [<802ced70>] usb_hcd_unlink_urb+0xc0/0xf4 >> > [<802d0320>] usb_kill_urb+0x54/0xfc >> > [<802ec9d8>] acm_port_down+0x21c/0x278 >> > [<802ecd94>] acm_tty_close+0x5c/0xb8 >> > [<8025f314>] tty_release_dev+0x17c/0x580 >> > [<8025f728>] tty_release+0x10/0x20 >> > [<8018f078>] __fput+0xf4/0x248 >> > [<8018af78>] filp_close+0x68/0x98 >> > [<8018b054>] sys_close+0xac/0xd8 >> > [<80102260>] stack_done+0x20/0x3c >> >> This points to an ehci problem. Alan? > > Yes indeed. This appears to have been caused by a recent change I > made. Previously the WARN_ON could never be triggered, but now it can > and I didn't realize it. > > Let me guess: This CDC-ACM device runs at full speed and it is behind a > high-speed hub, right? Correct. > The patch below will certainly remove the warning; the question is > whether ehci-hcd will continue to work correctly. Some testing would > be appreciated. In particular, try to set up the conditions that would > cause the warning, and afterward do "rmmod ehci-hcd". That should > cause any remaining errors to surface. This is what I get. Additionally, after re-inserting ehci-hcd I get no more responses from the ACM device, although it is correctly detected. Other devices (mouse, usb storage) continue to work. # rmmod ehci_hcd au1xxx-ehci au1xxx-ehci.0: remove, state 1 usb usb2: USB disconnect, address 1 usb 2-1: USB disconnect, address 2 usb 2-1.2: USB disconnect, address 3 au1xxx-ehci au1xxx-ehci.0: dma_pool_destroy ehci_qtd, 8714f000 busy au1xxx-ehci au1xxx-ehci.0: dma_pool_destroy ehci_qh, 871b9000 busy au1xxx-ehci au1xxx-ehci.0: USB bus 2 deregistered # modprobe ehci-hcd ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver Platform driver 'au1xxx-ehci' needs updating - please use dev_pm_ops au1xxx-ehci au1xxx-ehci.0: Au1xxx EHCI au1xxx-ehci au1xxx-ehci.0: new USB bus registered, assigned bus number 1 au1xxx-ehci au1xxx-ehci.0: irq 37, io mem 0x14020200 au1xxx-ehci au1xxx-ehci.0: USB 0.0 started, EHCI 1.00 usb usb1: configuration #1 chosen from 1 choice hub 1-0:1.0: USB hub found hub 1-0:1.0: 2 ports detected usb 1-1: new high speed USB device using au1xxx-ehci and address 2 usb 1-1: configuration #1 chosen from 1 choice hub 1-1:1.0: USB hub found hub 1-1:1.0: 4 ports detected usb 1-1.2: new full speed USB device using au1xxx-ehci and address 3 usb 1-1.2: configuration #1 chosen from 1 choice cdc_acm 1-1.2:1.0: ttyACM0: USB ACM device Thanks! Manuel Lauss -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html