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

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

 



Hello,

Please forgive the delay in commenting - I am just now catching up on 
these huge E-mail threads;

On Mon, 3 May 2010, Alan Stern wrote:

> So for example, runtime PM cannot be used to put the system into an S3 
> sleep state.

This is not quite true.  Runtime PM, *in conjunction with CPUIdle,* can 
put many current embedded Linux systems into not just S3, but actually S5.

This is done right now on OMAP in mainline Linux[1].  (S5 is called "C6" 
in that codebase, since the CPUIdle governor is used - this is a 
misnomer.)

This approach allows the system to wake up, or stay running, as requested 
by the timer subsystem, or the scheduler.  No suspend-block-like API is 
needed.

Several consumer-market Linux devices have already shipped using this 
mechanism.

> The simplest example is that suspend blockers can be used to control 
> whether or not the CPU shuts down, whereas runtime PM can't.

Runtime PM still needs to be combined with some sort of governor to 
control not only CPU power states, but also system power states.  CPUIdle 
works pretty well as a system power governor for a single-CPU system, but 
is admittedly something of a hack[2].

Going forward, some sort of basic, system-wide governor is a cleaner 
design[3].  But since the "opportunistic suspend" governor proposed in 
patch 1 ignores timer expiries and the scheduler runqueue, and then hacks 
around that decision by inserting suspend-block calls into code that would 
otherwise work normally, it's not a good approach.


- Paul



1. http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=arch/arm/mach-omap2/cpuidle34xx.c;h=3d3d035db9aff62ce522e0080e570cfdbf8e70cc;hb=4462dc02842698f173f518c1f5ce79c0fb89395a#l292

2. Paul Walmsley E-mail to the linux-pm mailing list, dated Thu, 13
   May 2010 13:01:33 -0600:
   http://permalink.gmane.org/gmane.linux.power-management.general/18592

3. ibid.
_______________________________________________
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