[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201009131328.33600.dmitry.torokhov@gmail.com>
Date: Mon, 13 Sep 2010 13:28:31 -0700
From: Dmitry Torokhov <dmitry.torokhov@...il.com>
To: Alan Stern <stern@...land.harvard.edu>
Cc: Oliver Neukum <oliver@...kum.org>, Jiri Slaby <jslaby@...e.cz>,
pingc@...om.com, "linux-pm" <linux-pm@...ts.linux-foundation.org>,
Linux kernel mailing list <linux-kernel@...r.kernel.org>,
linux-input@...r.kernel.org
Subject: Re: [linux-pm] wacom + runtime PM = AA deadlock
On Monday, September 13, 2010 01:02:16 pm Alan Stern wrote:
> On Mon, 13 Sep 2010, Oliver Neukum wrote:
> > Am Montag, 13. September 2010, 17:17:54 schrieb Alan Stern:
> > > On Mon, 13 Sep 2010, Oliver Neukum wrote:
> > > > PM in this driver looks broken. Please try this.
> > > >
> > > > In short you want to drop the PM reference and depend on remote
> > > > wakeup and busy marking for this driver. Currently it gets a
> > > > reference on every open() but never drops it.
> > > >
> > > > For locking you depend on the PM core's internal lock. You simply
> > > > make sure you have a PM reference during open() and close()
> > >
> > > Is there any point in resuming the device during close() just in order
> > > to kill the interrupt URB? It seems counterproductive -- if the device
> > > had been suspended then there wouldn't be any interrupt URB to kill in
> > > the first place.
> >
> > Suppose the device does not support remote wakeup. It would never
> > be autosuspended while it is open, but simply resetting the flag
> > would never reach the PM layer.
>
> Whoops, that's right. I didn't see the assignment to
> needs_remote_wakeup.
>
> How come wacom_open doesn't check to see if wacom->open is already set?
No need - input core will not call dev->open() twice.
--
Dmitry
--
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