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. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/