Re: USB deadlock in v2.5.67

Greg KH (greg@kroah.com)
Thu, 17 Apr 2003 21:50:06 -0700


On Thu, Apr 17, 2003 at 07:02:07PM -0700, David Mosberger wrote:
> So my 2.5.67 kernel was humming along nicely when I got the idea to
> unplug a USB keyboard. Instant deadlock. The backtrace shows this:

Ah, I just got this too, but you have the better debug trace.

>
> Call Trace:
> [<e0000000048c4260>] hcd_free_dev+0x140/0x240
> [<e0000000048b96e0>] usb_release_dev+0x100/0x140
> [<e000000004743420>] device_release+0x80/0xa0
> [<e000000004697600>] kobject_cleanup+0x100/0x120
> [<e0000000048c34d0>] urb_unlink+0x110/0x1a0
> [<e0000000048c4390>] usb_hcd_giveback_urb+0x30/0x1a0
> [<e0000000048da730>] dl_done_list+0x230/0x2a0
> [<e0000000048dbfd0>] ohci_irq+0x290/0x340
> [<e0000000048c4580>] usb_hcd_irq+0x80/0x100
> [<e000000004414e00>] handle_IRQ_event+0xa0/0x120
> [<e0000000044155e0>] do_IRQ+0x360/0x460
> [<e0000000044174b0>] ia64_handle_irq+0x70/0x140
> [<e000000004411e40>] ia64_leave_kernel+0x0/0x240
>
> <hcd_free_dev+0x140> translates into line 1249 in hcd.c, where it
> does:
>
> spin_lock_irqsave (&hcd_data_lock, flags);
>
> The deadlock is pretty obvious: the same lock has already been
> acquired urb_unlink(), 4 levels up in the call-chain.
>
> Anybody have a fix for this?

David (Brownell, that is), does this help with the trace I sent you a
few hours ago?

thanks,

greg k-h
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/