[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201106292135.47147.rjw@sisk.pl>
Date: Wed, 29 Jun 2011 21:35:46 +0200
From: "Rafael J. Wysocki" <rjw@...k.pl>
To: Alan Stern <stern@...land.harvard.edu>
Cc: Ming Lei <tom.leiming@...il.com>,
Linux PM mailing list <linux-pm@...ts.linux-foundation.org>,
Tejun Heo <tj@...nel.org>, Greg KH <greg@...ah.com>,
LKML <linux-kernel@...r.kernel.org>,
Magnus Damm <magnus.damm@...il.com>,
Kevin Hilman <khilman@...com>, linux-scsi@...r.kernel.org
Subject: Re: [PATCH 3/3] PM: Limit race conditions between runtime PM and system sleep
On Wednesday, June 29, 2011, Alan Stern wrote:
> On Tue, 28 Jun 2011, Rafael J. Wysocki wrote:
>
> > On Tuesday, June 28, 2011, Ming Lei wrote:
> > >
> > > Hi Rafael,
> > >
> > > On Sun, 26 Jun 2011 00:56:31 +0200
> > > "Rafael J. Wysocki" <rjw@...k.pl> wrote:
> > >
> > > > Index: linux-2.6/Documentation/power/runtime_pm.txt
> > > > ===================================================================
> > > > --- linux-2.6.orig/Documentation/power/runtime_pm.txt
> > > > +++ linux-2.6/Documentation/power/runtime_pm.txt
> > > > @@ -567,6 +567,11 @@ this is:
> > > > pm_runtime_set_active(dev);
> > > > pm_runtime_enable(dev);
> > > >
> > > > +The PM core always increments the run-time usage counter before calling the
> > > > +->suspend() callback and decrements it after calling the ->resume() callback.
> > > > +Hence disabling run-time PM temporarily like this will not cause any run-time
> > > > +suspend callbacks to be lost.
> > >
> > > Could you explain why the above is that "this will not cause any run-time suspend
> > > callbacks to be lost"?
> > >
> > > Looks like it should be "this will not cause any run-time suspend callbacks to
> > > be called", but not sure.
> >
> > You're right the wording is not perfect. The problem is that if it's done
> > this way without incrementing the usage counter beforehand, the status may
> > change to "suspended" right before the pm_runtime_set_active() and then the
> > new status will not reflect the actual state of the device.
> >
> > So, it may be better to say "Hence disabling runtime PM temporarily like this
> > will not cause the runtime PM status of the device to conflict with the actual
> > device state".
> >
> > Alan, what do you think?
>
> How about: "... will not cause any runtime suspend attempts to be
> permanently lost. If the usage count goes to zero following the return
> of the ->resume() callback, the ->runtime_idle() callback will be
> invoked as usual."
That's better, thanks!
Rafael
--
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