Re: [REGRESSION] 2.6.24/25: random lockups when accessing externalUSB harddrive
From: Stefan Becker
Date: Thu Jun 26 2008 - 02:38:56 EST
Hi,
ext Alan Stern wrote:
On Wed, 25 Jun 2008, Stefan Becker wrote:
HCD URB list locked by usb_hcd_link_urb_to_ep!
As far as I understand the matter this only can happen if
usb_hcd_link_urb_to_ep() gets interrupted while holding the spinlock.
But according to the contract at the header of the function it should be
called with interrupts disabled!
So it should. Do you know how to test whether interrupts are enabled?
There's a routine called raw_irqs_disabled() defined in
include/asm/irqflags.h. Stick it inside usb_hcd_link_urb_to_ep, and
the first time it returns nonzero, do a dump_stack().
Tried both and got nothing. So either our reasoning is wrong or
something really weird is going on. I'll try to improve my debugging
code and use dump_stack() at the place where it locks up.
Regards,
Stefan
---
Stefan Becker
E-Mail: Stefan.Becker@xxxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/