From: mark gross <mgross@linux.intel.com>
To: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: "pm list" <linux-pm@lists.linux-foundation.org>,
LKML <linux-kernel@vger.kernel.org>,
"Arve Hjønnevåg" <arve@android.com>,
"Alan Stern" <stern@rowland.harvard.edu>,
"Benjamin Herrenschmidt" <benh@kernel.crashing.org>,
"Pavel Machek" <pavel@ucw.cz>,
"Nigel Cunningham" <nigel@nigel.suspend2.net>,
"Matthew Garrett" <mjg59@srcf.ucam.org>,
"Woodruff, Richard" <r-woodruff2@ti.com>,
"Uli Luckas" <u.luckas@road.de>,
"Igor Stoppa" <igor.stoppa@nokia.com>,
"Brian Swetland" <swetland@google.com>,
"Len Brown" <lenb@kernel.org>
Subject: Re: [RFD] Automatic suspend
Date: Tue, 17 Feb 2009 16:27:04 -0800 [thread overview]
Message-ID: <20090218002704.GB25605@linux.intel.com> (raw)
In-Reply-To: <200902160010.16955.rjw@sisk.pl>
On Mon, Feb 16, 2009 at 12:10:15AM +0100, Rafael J. Wysocki wrote:
> Hi,
>
> The recent descussion about the Android PM patches sent by Arve shows that
> there is a need to introduce a mechanism allowing us to:
> (1) automatically put the system as a whole into a sleep state (eg. suspend to
> RAM) when it is found to be "idle", where the meaning of "idle" has to be
> defined too,
Can a fast STR state be created for the generic kernel across
architectures? Something that can go into and out of SRT in < 20ms? (I
picked 20ms as that gives 50Hz screen refresh) I guess the XO does
something like this between keystrokes.
Note: I don't know (but I should) if such a PM design popping into and
out of STR at worst every 20ms is worth doing on IA but lets assume its
not so bad for the sake of argument.
One could assume the system would be idle except for selects on HID
events when operating in this mode.
> (2) put given subset of devices into low power states whenever they are not
> used, without putting the entire system into a sleep state.
This is a driver deal to drop the hardware they control into lower power
states. Give information for PM-QOS the drivers could do the right
things here. (or should be able too)
Also how do we attempt to coordinate this with an automatic STR state?
How to coexist with user requested STR?
Do we need to more carefully define what STR really means? (I'm
thinking we do)
> To allow these two things to happen, the Andriod patches introduced the
> wakelocks with the associated infrastructure and the "early suspend" mechanism.
> However, quite a number of reviewers did not like these patches, for various
> reasons, so they cannot be regarded as generally acceptable. For this reason,
> I think, we should discuss the problem in detail from the beginning and try to
> find a solution that everyone interested will be comfortable with.
>
> For this purpose, IMO, we should at least reach an agreement on what the
> kernel's and the userland's roles in (1) and (2) are going to be. There also
> are quite a few questions that need to be answered. For instance, what
> conditions are going to be used to decide whether or not the system is idle
> enough so that we can put it into a sleep state? How are we going to check
> these conditions? What is going to happen if one (or more) of them changes
> while a system-wide power transition (eg. suspend) is in progress? Are we
> going to allow the user space to take part in this and if so, to what extent?
> What mechanisms are going be used to put devices into low power states at run
> time (ie. before starting any system-wide power transition) and how are they
> going to be related to the suspend-resume infrastructure used during
> system-wide power transitions? The answers to these (and other related)
> questions will likely affect all of the future Linux PM developlent, so IMO
> this is a very important matter.
>
> Opinions and comments welcome.
>
thank you for starting this FRD.
--mgross
> Thanks,
> Rafael
next prev parent reply other threads:[~2009-02-18 0:23 UTC|newest]
Thread overview: 195+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-15 23:10 [RFD] Automatic suspend Rafael J. Wysocki
2009-02-16 0:44 ` Arjan van de Ven
2009-02-16 2:12 ` Benjamin Herrenschmidt
2009-02-16 2:20 ` Arjan van de Ven
2009-02-16 3:23 ` Benjamin Herrenschmidt
2009-02-16 3:30 ` Arjan van de Ven
2009-02-16 23:05 ` Pavel Machek
2009-02-16 7:06 ` Oliver Neukum
2009-02-16 15:40 ` Arjan van de Ven
2009-02-16 16:48 ` Oliver Neukum
2009-02-16 17:31 ` Arjan van de Ven
2009-02-16 20:08 ` Kyle Moffett
2009-02-16 20:28 ` Arjan van de Ven
2009-02-16 20:39 ` Alan Stern
2009-02-16 20:45 ` Arjan van de Ven
2009-02-16 21:32 ` Woodruff, Richard
2009-02-16 21:52 ` Arjan van de Ven
2009-02-16 22:36 ` Woodruff, Richard
2009-02-16 22:59 ` Arjan van de Ven
2009-02-16 23:19 ` Rafael J. Wysocki
2009-02-16 23:23 ` Matthew Garrett
2009-02-17 10:12 ` Oliver Neukum
2009-02-17 13:58 ` Mark Brown
2009-02-17 14:20 ` Brian Swetland
2009-02-17 14:24 ` Matthew Garrett
2009-02-17 14:56 ` Oliver Neukum
2009-02-17 14:46 ` Arjan van de Ven
2009-02-17 14:51 ` Matthew Garrett
2009-02-17 14:56 ` Arjan van de Ven
2009-02-17 15:32 ` Woodruff, Richard
2009-02-18 0:04 ` Arjan van de Ven
2009-02-18 0:18 ` Woodruff, Richard
2009-02-18 5:35 ` Arjan van de Ven
2009-02-18 0:52 ` mark gross
2009-02-18 5:11 ` Arve Hjønnevåg
2009-02-18 5:55 ` Arjan van de Ven
2009-02-18 15:15 ` Matthew Garrett
2009-02-18 15:20 ` Woodruff, Richard
2009-02-17 14:58 ` Igor Stoppa
2009-02-17 15:28 ` Brian Swetland
2009-02-18 0:55 ` mark gross
2009-02-18 2:40 ` Benjamin Herrenschmidt
2009-02-18 17:48 ` Jesse Barnes
2009-02-18 17:52 ` Matthew Garrett
2009-02-18 18:01 ` Jesse Barnes
2009-02-18 22:05 ` Benjamin Herrenschmidt
2009-03-01 22:51 ` Pavel Machek
2009-02-27 10:00 ` Pavel Machek
2009-02-18 0:45 ` mark gross
2009-02-20 5:35 ` Arve Hjønnevåg
2009-02-20 15:27 ` Arjan van de Ven
2009-02-20 18:22 ` Pavel Machek
2009-02-20 18:26 ` Matthew Garrett
2009-02-20 20:49 ` Rafael J. Wysocki
2009-02-20 22:43 ` Arve Hjønnevåg
2009-02-16 23:41 ` Arjan van de Ven
2009-02-16 23:08 ` Rafael J. Wysocki
2009-02-17 3:09 ` Alan Stern
2009-02-17 23:21 ` Rafael J. Wysocki
2009-02-18 4:46 ` Arve Hjønnevåg
2009-02-18 21:17 ` Rafael J. Wysocki
2009-02-18 22:35 ` Arve Hjønnevåg
2009-02-18 22:44 ` Oliver Neukum
2009-02-18 23:04 ` Rafael J. Wysocki
2009-02-18 23:31 ` Alan Stern
2009-02-19 12:56 ` Rafael J. Wysocki
2009-02-19 14:59 ` Alan Stern
2009-02-19 21:15 ` Rafael J. Wysocki
2009-02-19 21:56 ` Brian Swetland
2009-02-19 22:08 ` Alan Stern
2009-02-19 22:21 ` Rafael J. Wysocki
2009-02-19 22:58 ` Oliver Neukum
2009-02-20 10:46 ` Rafael J. Wysocki
2009-02-20 22:05 ` Oliver Neukum
2009-02-20 22:44 ` Rafael J. Wysocki
2009-02-20 23:11 ` Arve Hjønnevåg
2009-02-20 23:20 ` Oliver Neukum
2009-02-21 1:59 ` Arve Hjønnevåg
2009-02-20 2:39 ` Arve Hjønnevåg
2009-02-20 10:49 ` Rafael J. Wysocki
2009-02-20 11:26 ` Arve Hjønnevåg
2009-02-20 15:56 ` Rafael J. Wysocki
2009-02-20 16:07 ` Kyle Moffett
2009-02-20 20:56 ` Rafael J. Wysocki
2009-02-20 21:02 ` Rafael J. Wysocki
2009-02-20 23:03 ` Arve Hjønnevåg
2009-02-20 23:57 ` Rafael J. Wysocki
2009-02-21 1:08 ` Arve Hjønnevåg
2009-02-21 9:47 ` Rafael J. Wysocki
2009-02-21 10:32 ` Arve Hjønnevåg
2009-02-21 20:20 ` Rafael J. Wysocki
2009-02-23 23:13 ` Arve Hjønnevåg
2009-02-23 23:53 ` Rafael J. Wysocki
2009-02-24 0:02 ` Arve Hjønnevåg
2009-02-27 10:12 ` Pavel Machek
2009-02-27 10:09 ` Pavel Machek
2009-02-27 14:22 ` Rafael J. Wysocki
2009-02-27 14:29 ` Matthew Garrett
2009-02-27 20:54 ` Rafael J. Wysocki
2009-02-27 22:09 ` Arve Hjønnevåg
2009-02-27 22:55 ` Rafael J. Wysocki
2009-02-27 20:40 ` Pavel Machek
2009-02-27 20:55 ` Rafael J. Wysocki
2009-02-27 22:56 ` Arve Hjønnevåg
2009-02-27 23:44 ` Pavel Machek
2009-02-28 3:04 ` Arve Hjønnevåg
2009-02-28 10:18 ` Rafael J. Wysocki
2009-02-28 21:57 ` Arve Hjønnevåg
2009-02-28 22:53 ` Rafael J. Wysocki
2009-02-28 23:38 ` Arve Hjønnevåg
2009-03-01 23:17 ` Rafael J. Wysocki
2009-03-02 23:48 ` Arve Hjønnevåg
2009-03-03 22:39 ` Rafael J. Wysocki
2009-03-03 23:38 ` Arve Hjønnevåg
2009-03-04 0:49 ` Pavel Machek
2009-03-01 0:06 ` Arve Hjønnevåg
2009-03-01 6:28 ` Benjamin Herrenschmidt
2009-03-01 9:11 ` Rafael J. Wysocki
2009-03-01 9:20 ` Rafael J. Wysocki
2009-03-03 1:22 ` Arve Hjønnevåg
2009-03-03 13:51 ` Pavel Machek
2009-03-04 0:06 ` Arve Hjønnevåg
2009-03-04 0:47 ` Pavel Machek
2009-03-01 23:08 ` Pavel Machek
2009-03-03 13:57 ` Pavel Machek
2009-03-03 23:51 ` Arve Hjønnevåg
2009-02-20 23:12 ` Oliver Neukum
2009-02-20 23:40 ` Rafael J. Wysocki
2009-02-20 23:45 ` Matthew Garrett
2009-02-21 9:52 ` Rafael J. Wysocki
2009-02-21 16:52 ` Alan Stern
2009-02-21 21:14 ` Rafael J. Wysocki
2009-02-27 10:16 ` Pavel Machek
2009-02-27 14:46 ` Alan Stern
2009-02-27 20:58 ` Rafael J. Wysocki
2009-02-22 14:03 ` Pavel Machek
2009-02-23 14:04 ` Oliver Neukum
2009-02-27 10:18 ` Pavel Machek
2009-02-27 15:22 ` Oliver Neukum
2009-03-05 16:54 ` Pavel Machek
2009-02-27 17:09 ` Chris Friesen
2009-02-27 20:46 ` Pavel Machek
2009-03-05 13:48 ` Pavel Machek
2009-03-01 22:56 ` Pavel Machek
2009-03-02 8:24 ` Oliver Neukum
2009-03-02 14:34 ` Pavel Machek
2009-03-02 15:13 ` Arjan van de Ven
2009-02-16 23:20 ` Oliver Neukum
2009-02-20 18:05 ` Pavel Machek
2009-02-16 6:23 ` Roland Dreier
2009-02-16 15:38 ` Arjan van de Ven
2009-02-16 22:47 ` Pavel Machek
2009-02-16 7:02 ` Oliver Neukum
2009-02-16 21:48 ` Rafael J. Wysocki
2009-02-16 21:52 ` Peter Zijlstra
2009-02-16 21:53 ` Arjan van de Ven
2009-02-16 22:12 ` Rafael J. Wysocki
2009-02-16 22:40 ` Alan Stern
2009-02-16 22:56 ` Arjan van de Ven
2009-02-16 23:28 ` Rafael J. Wysocki
2009-02-17 2:43 ` Alan Stern
2009-02-17 2:57 ` Arjan van de Ven
2009-02-17 3:26 ` Alan Stern
2009-02-16 23:02 ` Rafael J. Wysocki
2009-02-17 2:56 ` Alan Stern
2009-02-17 23:26 ` Rafael J. Wysocki
2009-02-18 8:53 ` Oliver Neukum
2009-02-18 14:51 ` Arjan van de Ven
2009-02-18 15:05 ` Oliver Neukum
2009-02-18 15:10 ` Alan Stern
2009-02-18 15:55 ` Oliver Neukum
2009-02-18 16:39 ` Alan Stern
2009-02-18 17:10 ` Oliver Neukum
2009-02-18 15:09 ` Alan Stern
2009-02-16 22:51 ` Pavel Machek
2009-02-16 22:55 ` Arjan van de Ven
2009-02-16 23:00 ` Rafael J. Wysocki
2009-02-16 23:18 ` Pavel Machek
2009-02-16 23:29 ` Oliver Neukum
2009-02-16 22:58 ` Pavel Machek
2009-02-16 23:13 ` Matthew Garrett
2009-02-16 23:22 ` Pavel Machek
2009-02-16 23:26 ` Matthew Garrett
2009-02-17 14:14 ` Brian Swetland
2009-02-17 14:19 ` Matthew Garrett
2009-02-17 21:57 ` mark gross
2009-02-17 22:04 ` Matthew Garrett
2009-02-17 22:19 ` Jesse Barnes
2009-02-17 23:28 ` Woodruff, Richard
2009-02-18 0:34 ` mark gross
2009-02-18 17:30 ` Chris Ball
2009-02-16 23:26 ` Rafael J. Wysocki
2009-02-22 13:46 ` Pavel Machek
2009-02-18 0:27 ` mark gross [this message]
2009-02-18 21:11 ` Rafael J. Wysocki
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090218002704.GB25605@linux.intel.com \
--to=mgross@linux.intel.com \
--cc=arve@android.com \
--cc=benh@kernel.crashing.org \
--cc=igor.stoppa@nokia.com \
--cc=lenb@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=mjg59@srcf.ucam.org \
--cc=nigel@nigel.suspend2.net \
--cc=pavel@ucw.cz \
--cc=r-woodruff2@ti.com \
--cc=rjw@sisk.pl \
--cc=stern@rowland.harvard.edu \
--cc=swetland@google.com \
--cc=u.luckas@road.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox