Re: [BUGFIX] PM: Fix active child counting when disabled and forbidden

From: Rafael J. Wysocki
Date: Thu Nov 15 2012 - 19:50:38 EST


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.

Thanks,
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 majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/