Messages in this thread | | | Date | Sat, 5 Feb 2011 22:19:26 -0500 (EST) | From | Alan Stern <> | Subject | Re: [BUG] usb_set_device_state |
| |
On Sun, 6 Feb 2011, Rafael J. Wysocki wrote:
> On Saturday, February 05, 2011, Alan Stern wrote: > > On Sun, 6 Feb 2011, Minchan Kim wrote: > > > > > I got following message during booting mmotm-02-04. ... > > > It seems usb_set_device_state disable irq by spin_lock_irqsave. > > > But it calls device_set_wakeup_capable which ends up calling sysfs_merge_group. > > > It calls mutex_lock. :( > > > > > > Is it already known BUG? > > > > No, it was newly introduced by changes to the > > device_set_wakeup_capable() routine. Rafael, this sort of problem may > > occur in other places too, since previously there was no requirement > > that device_set_wakeup_capable() be called in process context. > > I'm aware of that, but it's only happend in a handful of network drivers so far. > > I think this is a new case in -mm, though, isn't it?
I'm not sure. The USB core does call device_set_wakeup_capable() while holding one or more spinlocks in usb_set_device_state(), and that routine is called in several places. You ought to be able to duplicate the error on your own system simply by plugging in a USB hub.
Alan Stern
| |