Re: Attempted summary of suspend-blockers LKML thread

david
2010-08-04T04:55:07Z

On Tue, 3 Aug 2010, Arjan van de Ven wrote:

> On Tue, 3 Aug 2010 17:10:15 -0700
> "Paul E. McKenney" <paulmck@linux.vnet.ibm.com> wrote:
>>
>> OK, I'll bite...
>>
>>> From an Android perspective, the differences are as follows:
>>
>> 1. Deep idle states are entered only if there are no runnable
>> tasks. In contrast, opportunistic suspend can happen even when there
>> are tasks that are ready, willing, and able to run.
>
> for "system suspend", this is an absolutely valid statement.
> for "use suspend as idle state", it's not so clearly valid.
> (but this is sort of a separate problem, basically the "when do we
> freeze the tasks that we don't like for power reasons" problem,
> which in first order is independent on what kind of idle power state
> you pick, and discussed extensively elsewhere in this thread)

note that what I'm speculating about would never freeze some of the tasks,
it would run everything if anything is run, but it would not consider the
actions of some of the programs when deciding if it can shutdown.

so if you have all your privilaged applications in long sleeps, but still
have your bouncing cows running, peggng the CPU, making noise, and
updating the screen, the system would decide the system is 'idle' and go
into the 'suspend' low power state until there is a wake activity.

but if you have a privilaged application doing other stuff (say you are
talking on the phone, have a GPS mapping program running and giving you
directions, etc), the bouncing cows would continue to run and there would
never be an attempt to freeze them while leaving the other stuff active.

David Lang