Re: [Update][RFC][PATCH] PM / Runtime: Add sysfs switch for disablingdevice run-time PM

From: Alan Stern
Date: Tue Jan 19 2010 - 10:40:39 EST

On Mon, 18 Jan 2010, Rafael J. Wysocki wrote:

> > Ouch. This does nearly the same thing as the power/level attribute in
> > the USB subsystem, but in an incompatible and more complicated way.
> >
> > The power/level attribute can contain either "on" or "auto", meaning
> > that the device is always on or that it is subject to automatic runtime
> > power management (autosuspend).
> It looks like my "disable" is similar to "on", while my "enable" is similar to
> "auto". I can use "auto" and "on" just fine.


> > Changing the setting from "auto" to "on" merely does sets a flag and does
> > pm_runtime_get_sync(); changing it from "on" to "auto" clears the flag and
> > does pm_runtime_put_sync().
> We can do it almost this way in general, although I think the flag should be
> changed under the power.lock.

Yes. I was using the device semaphore, but the power.lock is more
appropriate here.

> Updated patch is appended.

Why change the name from "level" to "runtime"?

> /*
> + * runtime - Report/change current runtime PM setting of the device
> + *
> + * Runtime power management of a device can be blocked with the help of
> + * this attribute. All devices have one of the following two values for
> + * the power/runtime file:
> + *
> + * + "auto\n" to allow the device to be power managed at run time;
> + * + "on\n" to prevent the device from being power managemed at run time;

---------------------------------------------------------------^^ typo

Don't forget to add an entry to Documentation/ABI/testing/.

Alan Stern

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at