Re: [RFC][PATCH 8/8] PM / Sleep: Add user space interface for manipulating wakeup sources

Arve Hjønnevåg
2012-04-27T21:24:47Z

2012/4/27 Rafael J. Wysocki <rjw@sisk.pl>:
> On Friday, April 27, 2012, Arve Hjønnevåg wrote:
>> 2012/4/26 Rafael J. Wysocki <rjw@sisk.pl>:
>> ...
>> > ---
>> > From: Rafael J. Wysocki <rjw@sisk.pl>
>> > Subject: PM / Sleep: Add user space interface for manipulating wakeup sources, v3
>> >
>> > Android allows user space to manipulate wakelocks using two
>> > sysfs file located in /sys/power/, wake_lock and wake_unlock.
>> > Writing a wakelock name and optionally a timeout to the wake_lock
>> > file causes the wakelock whose name was written to be acquired (it
>> > is created before is necessary), optionally with the given timeout.
>> > Writing the name of a wakelock to wake_unlock causes that wakelock
>> > to be released.
>> >
>> > Implement an analogous interface for user space using wakeup sources.
>> > Add the /sys/power/wake_lock and /sys/power/wake_unlock files
>> > allowing user space to create, activate and deactivate wakeup
>> > sources, such that writing a name and optionally a timeout to
>> > wake_lock causes the wakeup source of that name to be activated,
>> > optionally with the given timeout.  If that wakeup source doesn't
>> > exist, it will be created and then activated.  Writing a name to
>> > wake_unlock causes the wakeup source of that name, if there is one,
>> > to be deactivated.  Wakeup sources created with the help of
>> > wake_lock that haven't been used for more than 5 minutes are garbage
>> > collected and destroyed.  Moreover, there can be only WL_NUMBER_LIMIT
>>
>> I think it would be better if the garbage collection and limit was
>> configurable and optional. I would probably turn both features off
>> since I do not want to chase down bugs because a wakelock was ignored,
>> and I think the garbage collection will erase stats that we care
>> about.
>
> OK, but would you mind if I added the configurability as a separate incremental
> patch?
>

That is fine with me.

--
Arve Hjønnevåg