Re: [PATCH 0/8] Suspend block api (version 6)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Matthew,

On Wed, 19 May 2010, Matthew Garrett wrote:

> On Wed, May 19, 2010 at 10:17:01AM -0600, Paul Walmsley wrote:
> 
> > Could you please elaborate, or provide a link to an E-mail in the archives 
> > that would explain why?
> 
> What would otherwise be a wakeup event may be delivered between you 
> deciding to stop tasks and you actually stopping tasks. How do you know 
> to restart tasks at that point?

The original message you sent[1] quoted this part[2] of the proposal:

----
       A. To prevent untrusted process timers from waking the system,
          the processes can be run in a cgroup that calls
          del_timer_sync() on all process timers upon receipt of some
          trigger.  When the system returns from the system low-power
          state and some trigger event happens, add_timer() can be
          called to add all the cgroup's timers back.
----

That isn't intended to address the task restarting problem.  The task 
restarting problem is intended to be addressed by this part[3]:

----
      B. To prevent untrusted processes from hogging CPUs, the
         processes can be run in a cgroup that puts all threads in
         TASK_RUNNING processes into TASK_INTERRUPTIBLE state and
         calls schedule() [6], upon receipt of some trigger.  This
         should allow processes to be awakened by an external system
         event, e.g., network packet received.  When the system
         returns from the system low-power state and some trigger
         event happens, those process threads can be placed back into
         TASK_RUNNING state and rescheduled.
----

It sounds like Android doesn't even need to use full system suspend if 
some proposal like (A) and (B) are implemented[4].  In that case, all the 
code that deals with races in full system suspend (like suspend blockers) 
can be dropped.


- Paul

1. Matthew Garrett E-mail to the linux-pm mailing list, dated Tue May 18
   02:55:19 +0100
   https://lists.linux-foundation.org/pipermail/linux-pm/2010-May/025664.html

2. Paragraph B4A of Paul Walmsley E-mail to the linux-pm mailing list, 
   dated Mon May 17 19:39:44 CDT 2010:
   https://lists.linux-foundation.org/pipermail/linux-pm/2010-May/025663.html

3. Paragraph B4B of Paul Walmsley E-mail to the linux-pm mailing list, 
   dated Mon May 17 19:39:44 CDT 2010:
   https://lists.linux-foundation.org/pipermail/linux-pm/2010-May/025663.html

4. Arve Hjønnevåg E-mail to the linux-pm mailing list, dated Mon, May 17 
   20:06:33 PDT 2010:
   https://lists.linux-foundation.org/pipermail/linux-pm/2010-May/025668.html
_______________________________________________
linux-pm mailing list
linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linux-foundation.org/mailman/listinfo/linux-pm

[Index of Archives]     [Linux ACPI]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [CPU Freq]     [Kernel Newbies]     [Fedora Kernel]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux