Re: [patch update 3] PM: Introduce core framework for run-time PM of I/O devices
From: Rafael J. Wysocki
Date: Mon Jun 22 2009 - 19:02:02 EST
On Monday 22 June 2009, Alan Stern wrote:
> On Mon, 22 Jun 2009, Rafael J. Wysocki wrote:
>
> > > Again, this boils down to how drivers decide to use the async
> > > interface. I can see justifications for both pm_request_resume_get
> > > (which would always increment the counter) and pm_request_resume (which
> > > would increment the counter only if a work item had to be queued).
> >
> > OK, so this means we should provide both at the core level and let the drivers
> > decide which one to use.
> >
> > I think in both cases the caller would be responsible for decrementing the
> > counter?
>
> Sure. They could call pm_runtime_put just once at the end of their
> runtime_resume method (assuming they used pm_request_resume), or they
> could call it at every place where some deferred work was finished
> (assuming they used pm_request_resume_get).
>
> > > Okay, we don't need it then. I forgot to mention in the previous
> > > message that there also has to be a pm_runtime_del() routine, which
> > > should cancel pending workqueue items and set the counter to some high
> > > value so that no new items are added.
> >
> > Should that be called by device_pm_remove()? I think so.
>
> Yes. I suppose it could be named pm_runtime_remove. Either would be
> okay.
OK
I'm sending a new version of the $subject patch, containing these changes
among other things, in a new thread.
Best,
Rafael
--
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/