Messages in this thread | | | From | "Rafael J. Wysocki" <> | Subject | Re: [BUGFIX] PM: Fix active child counting when disabled and forbidden | Date | Fri, 16 Nov 2012 02:29:54 +0100 |
| |
On Friday, November 16, 2012 08:54:56 AM Huang Ying wrote: > On Fri, 2012-11-16 at 01:55 +0100, Rafael J. Wysocki wrote: > > On Friday, November 16, 2012 01:44:00 AM Rafael J. Wysocki wrote: > > > On Friday, November 16, 2012 08:36:14 AM Huang Ying wrote: > > > > On Thu, 2012-11-15 at 10:51 +0100, Rafael J. Wysocki wrote: > > > > [...] > > > > > > > > > > For this situation, if user "echo auto > .../power/control" for the > > > > device, the runtime PM callbacks of device will be called. I think that > > > > is not intended. So I think it is better to use some kind of flag or > > > > state for that. > > > > > > I'm not sure what situation exactly you have in mind. Care to give an > > > exact scenario? > > > > Ah, I see. When we've just called drv->remove(), there is a window in > > which user space may cause the driver's runtime PM callbacks to be > > executed by changing its attribute to "auto". > > > > So perhaps we should check pci_dev->driver rather than pci_dev->dev.driver > > in the runtime PM callbacks? With a few more changes that should allow us > > to close that race. > > Yes. And I think, with pci_dev->driver (after some changes suggested by > Alan), we need not to use pm_runtime_get/put_skip_callbacks().
Good. Can you please prepare a patch, then? :-)
Rafael
-- I speak only for myself. Rafael J. Wysocki, Intel Open Source Technology Center.
| |