[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.44L0.1102052211040.9798-100000@netrider.rowland.org>
Date: Sat, 5 Feb 2011 22:19:26 -0500 (EST)
From: Alan Stern <stern@...land.harvard.edu>
To: "Rafael J. Wysocki" <rjw@...k.pl>
cc: Minchan Kim <minchan.kim@...il.com>,
linux kernel mailing list <linux-kernel@...r.kernel.org>,
Greg Kroah-Hartman <gregkh@...e.de>,
Andrew Morton <akpm@...ux-foundation.org>
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
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists