From: Thomas Gleixner <tglx@linutronix.de> To: Matthew Garrett <mjg59@srcf.ucam.org> Cc: "Alan Cox" <alan@lxorguk.ukuu.org.uk>, "Arve Hjønnevåg" <arve@android.com>, "Florian Mickler" <florian@mickler.org>, "Vitaly Wool" <vitalywool@gmail.com>, "Peter Zijlstra" <peterz@infradead.org>, LKML <linux-kernel@vger.kernel.org>, Paul@smtp1.linux-foundation.org, felipe.balbi@nokia.com, "Linux OMAP Mailing List" <linux-omap@vger.kernel.org>, "Linux PM" <linux-pm@lists.linux-foundation.org> Subject: Re: [linux-pm] [PATCH 0/8] Suspend block api (version 8) Date: Thu, 27 May 2010 17:32:56 +0200 (CEST) [thread overview] Message-ID: <alpine.LFD.2.00.1005271642440.3032@localhost.localdomain> (raw) In-Reply-To: <20100527140655.GA28048@srcf.ucam.org> On Thu, 27 May 2010, Matthew Garrett wrote: > On Thu, May 27, 2010 at 12:39:43AM +0100, Alan Cox wrote: > > > - Supporting Android needs well good > > - Opportunistic suspend good > > - Manner in which interface is expressed to userspace bad > > - Latency constraint interface would be better > > - Your existing behaviour can be implemented by a simplistic use of a > > latency constraint interface > > - We can fix a pile of other directly connected things at the same time > > - Implementation internals I care far less about because we can fix those > > later > > - Suspend is just a power state > > > > How does that fit your model and vision ? > > I don't entirely see how this works. In order to deal with poorly > written applications, it's necessary to (optionally, based on some > policy) ignore them when it comes to the scheduler. The problem is how > to implement the optional nature of this in a race-free manner. This is > obviously a pathological case, but imagine an application that does > something along the following lines: > > int input = open ("/dev/input", O_RDONLY|O_NONBLOCK); > char foo; > > while (1) { > suspend_block(); > if (read(input, &foo, 1) > 0) { > (do something) > suspend_unblock(); > } else { > suspend_unblock(); > (draw bouncing cows and clouds and tractor beams briefly) > } > } > > Now, if the user is playing this game, you want it to be scheduled. If > the user has put down their phone and the screen lock has kicked in, you > don't want it to be scheduled. So we could imagine some sort of cgroup > that contains untrusted tasks - when the session is active we set a flag > one way which indicates to the scheduler that tasks in TASK_RUNNING > should be scheduled, and when the session is idle we set the flag the > other way and all processes in that cgroup get shifted to > TASK_INTERRUPTIBLE or something. > > Except that doesn't work. If the session goes idle in the middle of the > app drawing a frame, we'll stop the process and the task will never call > read(). So the user hits a key, we wake up, nothing shifts from > TASK_INTERRUPTIBLE into TASK_RUNNING, the key never gets read, we go > back to sleep. The event never gets delivered. > > Now let's try this in the Android world. The user hits a key and the > system wakes up. The input layer takes a suspend block. The application > now draws all the cows it wants to, takes its own suspend block and > reads the input device. This empties the queue and the kernel-level > suspend block is released. The application then processes the event > before releasing the suspend block. The event has been delivered and > handled. Thanks for providing this example: 1) It proves that suspend blockers are solely designed to encourage people to code crap. 2) It exposes the main conceptual problem of the approach: The input layer in the kernel magically takes a suspend blocker and releases it in an equally magic way just to allow the crappy application to reach the point where it takes it's own suspend blocker and can react on the user input. And you need to do that, because the user applications suspend blocker magic is racy as hell. To work around that you sprinkle your suspend blocker magic all over the kernel instead of telling people how to solve the problem correctly. And what are you achieving with this versus power saving ? Exaclty _NOTHING_ ! Simply because you move the cow drawing CPU time from the point where the device wants to go into suspend to the point where the user hits a key again. You even delay the reaction of your app to the user input by the time it needs to finish drawing cows. So you need to come up with a way better example why you need your blockers than with this prove of misconception. > You can't express that with resource limits or QoS constraints. If you > want to deal with this kind of situation then, as far as I can tell, you > need either suspend blockers or something so close to them that it makes > no difference. Wrong. If your application is interactive then you set the QoS requirement once to interactive and be done. So the correct point to make a power state decision is when the app waits for a key press. At this point the kernel can take several pathes: 1) Keep the system alive because the input device is in active state and a key press is expected 2) Go into supsend because the input device is deactivated after the screen lock kicked in. This behaves exactly the same way in terms of power consumption as your blocker example just without all the mess you are trying to create. And it allows the kernel to use intermediate power saving methods (between idle and suspend) which might be available on some hardware. Thanks, tglx
next prev parent reply other threads:[~2010-05-27 15:33 UTC|newest]
Thread overview: 511+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1274482015-30899-1-git-send-email-arve@android.com>
[not found] ` <201005240246.55043.rjw@sisk.pl>
2010-05-24 4:32 ` [PATCH 0/8] Suspend block api (version 8) Felipe Balbi
2010-05-24 18:49 ` Rafael J. Wysocki
2010-05-24 22:51 ` Kevin Hilman
2010-05-24 23:38 ` Rafael J. Wysocki
2010-05-26 8:47 ` Peter Zijlstra
2010-05-26 9:41 ` Arve Hjønnevåg
2010-05-26 9:45 ` Peter Zijlstra
2010-05-26 9:49 ` Brian Swetland
2010-05-26 10:02 ` Florian Mickler
2010-05-26 10:08 ` Peter Zijlstra
2010-05-26 10:19 ` Florian Mickler
2010-05-26 11:18 ` [linux-pm] " Vitaly Wool
2010-05-26 11:37 ` Florian Mickler
2010-05-26 12:01 ` Vitaly Wool
2010-05-26 12:24 ` Florian Mickler
2010-05-26 12:29 ` Felipe Balbi
2010-05-26 12:33 ` Florian Mickler
2010-05-26 12:35 ` Felipe Balbi
2010-05-26 12:54 ` Florian Mickler
2010-05-26 13:06 ` [linux-pm] " Peter Zijlstra
2010-05-26 13:19 ` Alan Cox
2010-05-26 13:39 ` Florian Mickler
2010-05-27 8:58 ` Felipe Contreras
2010-05-26 12:41 ` Peter Zijlstra
2010-05-26 13:03 ` Florian Mickler
2010-05-26 13:07 ` Peter Zijlstra
2010-05-26 13:30 ` Florian Mickler
2010-05-26 12:55 ` Vitaly Wool
2010-05-26 13:19 ` Florian Mickler
2010-05-26 14:38 ` Alan Stern
2010-05-27 10:56 ` Florian Mickler
2010-05-27 12:27 ` Igor Stoppa
2010-05-27 12:28 ` Igor Stoppa
2010-05-26 13:16 ` Alan Cox
2010-05-26 13:46 ` Thomas Gleixner
2010-05-26 15:33 ` Felipe Balbi
2010-05-26 15:11 ` Florian Mickler
2010-05-26 15:12 ` Peter Zijlstra
2010-05-26 15:15 ` Peter Zijlstra
2010-05-26 15:40 ` Florian Mickler
2010-05-26 15:45 ` Peter Zijlstra
2010-05-26 15:47 ` Florian Mickler
2010-05-26 15:49 ` Florian Mickler
2010-05-26 15:16 ` Peter Zijlstra
2010-05-26 15:45 ` Alan Cox
2010-05-26 17:22 ` Thomas Gleixner
2010-05-26 18:02 ` Alan Cox
2010-05-26 19:56 ` Florian Mickler
2010-05-26 20:03 ` Vitaly Wool
2010-05-27 5:11 ` Florian Mickler
2010-05-27 13:35 ` Thomas Gleixner
2010-05-28 7:25 ` Florian Mickler
2010-05-27 13:26 ` Thomas Gleixner
2010-05-26 19:54 ` Florian Mickler
2010-05-26 22:09 ` Alan Cox
2010-05-27 5:14 ` Florian Mickler
2010-05-27 7:43 ` Vitaly Wool
2010-05-27 13:37 ` Thomas Gleixner
2010-05-26 15:19 ` Kevin Hilman
2010-05-26 22:30 ` [linux-pm] " Arve Hjønnevåg
2010-05-26 23:39 ` Alan Cox
2010-05-27 0:49 ` Arve Hjønnevåg
2010-05-27 14:29 ` Thomas Gleixner
2010-05-27 15:06 ` Alan Stern
2010-05-27 15:09 ` Peter Zijlstra
2010-05-27 15:33 ` Alan Cox
2010-05-27 15:34 ` Peter Zijlstra
2010-05-27 15:47 ` Alan Stern
2010-05-27 16:06 ` Thomas Gleixner
2010-05-27 21:00 ` Rafael J. Wysocki
2010-06-03 4:24 ` Paul Mundt
2010-06-03 6:58 ` Brian Swetland
2010-06-03 8:14 ` Peter Zijlstra
2010-05-27 15:31 ` Alan Cox
2010-05-27 16:27 ` Felipe Balbi
2010-05-27 17:04 ` Alan Stern
2010-05-27 17:13 ` Peter Zijlstra
2010-05-27 17:29 ` Alan Stern
2010-05-27 17:32 ` Peter Zijlstra
2010-05-27 21:10 ` Rafael J. Wysocki
2010-05-27 21:34 ` Alan Cox
2010-05-27 17:15 ` Felipe Balbi
2010-05-27 17:25 ` Thomas Gleixner
2010-05-27 17:41 ` Alan Stern
2010-05-27 21:15 ` Rafael J. Wysocki
2010-05-27 21:29 ` Alan Cox
2010-05-27 21:40 ` [linux-pm] " Thomas Gleixner
2010-05-27 23:43 ` Rafael J. Wysocki
2010-05-27 23:50 ` Arve Hjønnevåg
2010-05-31 4:33 ` Neil Brown
2010-05-31 22:05 ` Rafael J. Wysocki
2010-05-31 23:00 ` Neil Brown
2010-06-01 0:32 ` [linux-pm] " Rafael J. Wysocki
2010-06-01 0:54 ` Thomas Gleixner
2010-06-01 1:33 ` Neil Brown
2010-06-01 1:49 ` Thomas Gleixner
2010-06-01 2:20 ` Neil Brown
2010-06-01 5:35 ` Florian Mickler
2010-06-03 13:44 ` David Brownell
2010-06-01 10:50 ` Thomas Gleixner
2010-06-02 5:32 ` [PATCH] - race-free suspend. Was: " Neil Brown
2010-06-02 7:05 ` Arve Hjønnevåg
2010-06-02 8:06 ` Neil Brown
2010-06-02 8:50 ` Florian Mickler
2010-06-02 10:23 ` Neil Brown
2010-06-02 9:12 ` Arve Hjønnevåg
2010-06-02 9:33 ` Thomas Gleixner
2010-06-02 9:53 ` Arve Hjønnevåg
2010-06-02 12:26 ` Thomas Gleixner
2010-06-02 11:02 ` Neil Brown
2010-06-02 19:05 ` Florian Mickler
2010-06-02 23:21 ` Neil Brown
2010-06-02 23:32 ` Dmitry Torokhov
2010-06-03 1:27 ` Florian Mickler
2010-06-03 2:44 ` Arve Hjønnevåg
2010-06-03 3:26 ` Neil Brown
2010-06-04 7:14 ` Dmitry Torokhov
2010-06-04 7:55 ` Arve Hjønnevåg
2010-06-02 18:05 ` Brian Swetland
2010-06-03 6:04 ` [linux-pm] [PATCH] - race-free suspend. Was: " mark gross
2010-06-03 6:12 ` Brian Swetland
2010-06-03 13:36 ` mark gross
2010-06-03 17:26 ` Brian Swetland
2010-06-03 6:33 ` [PATCH] - race-free suspend. Was: Re: [linux-pm] " Neil Brown
2010-06-03 6:43 ` Brian Swetland
2010-06-03 14:21 ` tytso
2010-06-03 15:41 ` Peter Zijlstra
2010-06-02 20:41 ` Rafael J. Wysocki
2010-06-02 22:05 ` Neil Brown
2010-06-02 22:15 ` Rafael J. Wysocki
2010-06-01 2:10 ` Alan Stern
2010-06-01 2:38 ` Neil Brown
2010-06-01 14:47 ` Alan Stern
2010-06-01 22:08 ` Rafael J. Wysocki
2010-06-02 0:43 ` Neil Brown
2010-06-02 20:55 ` Rafael J. Wysocki
2010-06-01 22:03 ` Rafael J. Wysocki
2010-06-01 5:04 ` Arve Hjønnevåg
2010-06-01 22:00 ` Rafael J. Wysocki
2010-05-29 3:10 ` mark gross
2010-05-27 14:06 ` Matthew Garrett
2010-05-27 14:28 ` Peter Zijlstra
2010-05-27 14:35 ` Matthew Garrett
2010-05-27 14:41 ` Peter Zijlstra
2010-05-27 14:43 ` Peter Zijlstra
2010-05-27 15:10 ` Alan Cox
2010-05-27 15:07 ` Peter Zijlstra
2010-05-27 16:28 ` Florian Mickler
2010-05-27 21:17 ` Rafael J. Wysocki
2010-05-27 15:05 ` Alan Cox
2010-05-27 15:05 ` [linux-pm] " Peter Zijlstra
2010-05-27 16:07 ` Matthew Garrett
2010-05-27 16:41 ` Alan Cox
2010-05-27 16:52 ` [linux-pm] " Matthew Garrett
2010-05-27 18:02 ` Alan Cox
2010-05-27 18:12 ` Matthew Garrett
2010-05-27 18:48 ` Alan Cox
2010-05-27 18:56 ` Matthew Garrett
2010-05-27 19:25 ` Alan Cox
2010-05-27 19:29 ` Matthew Garrett
2010-05-27 19:53 ` Alan Cox
2010-05-27 20:11 ` Matthew Garrett
2010-05-27 20:53 ` Alan Cox
2010-05-27 21:08 ` Matthew Garrett
2010-05-27 21:24 ` Alan Stern
2010-05-27 21:28 ` Matthew Garrett
2010-05-28 10:03 ` Bernd Petrovitsch
2010-05-28 11:45 ` Matthew Garrett
2010-05-28 17:12 ` Bernd Petrovitsch
2010-05-27 19:32 ` Zygo Blaxell
2010-05-27 15:32 ` Thomas Gleixner [this message]
2010-05-27 15:52 ` Matthew Garrett
2010-05-27 16:16 ` Alan Cox
2010-05-27 16:19 ` Matthew Garrett
2010-05-27 17:04 ` Thomas Gleixner
2010-05-27 17:07 ` Matthew Garrett
2010-05-27 17:13 ` Peter Zijlstra
2010-05-27 17:16 ` Matthew Garrett
2010-05-27 17:20 ` Peter Zijlstra
2010-05-27 17:25 ` Matthew Garrett
2010-05-27 17:28 ` Peter Zijlstra
2010-05-27 17:32 ` Matthew Garrett
2010-05-27 17:35 ` Peter Zijlstra
2010-05-27 17:41 ` Matthew Garrett
2010-05-27 17:46 ` Peter Zijlstra
2010-05-27 17:52 ` [linux-pm] " Matthew Garrett
2010-05-27 17:56 ` Peter Zijlstra
2010-05-27 17:59 ` Matthew Garrett
2010-05-27 18:06 ` Peter Zijlstra
2010-05-27 18:17 ` Matthew Garrett
2010-05-27 18:22 ` Peter Zijlstra
2010-05-27 18:31 ` Matthew Garrett
2010-05-27 19:06 ` Alan Cox
2010-05-27 21:03 ` Alan Cox
2010-05-27 21:06 ` [linux-pm] " Matthew Garrett
2010-05-27 18:12 ` Thomas Gleixner
2010-05-27 18:18 ` Matthew Garrett
2010-05-27 21:37 ` Alan Cox
2010-05-27 21:36 ` [linux-pm] " Matthew Garrett
2010-05-27 21:56 ` Alan Cox
2010-05-27 22:08 ` Matthew Garrett
2010-05-27 22:32 ` Alan Cox
2010-05-27 22:35 ` Matthew Garrett
2010-05-27 23:02 ` Alan Stern
2010-05-27 17:32 ` Alan Stern
2010-05-27 17:37 ` Peter Zijlstra
2010-05-27 21:36 ` Rafael J. Wysocki
2010-05-27 21:49 ` Alan Cox
2010-05-27 17:30 ` Alan Cox
2010-05-27 17:26 ` Matthew Garrett
2010-05-27 17:18 ` Felipe Balbi
2010-05-27 17:00 ` Thomas Gleixner
2010-05-27 18:35 ` Zygo Blaxell
2010-05-27 16:45 ` Thomas Gleixner
2010-05-27 16:59 ` Matthew Garrett
2010-05-27 17:15 ` Thomas Gleixner
2010-05-27 17:23 ` Matthew Garrett
2010-05-27 17:26 ` Peter Zijlstra
2010-05-27 17:49 ` Alan Cox
2010-05-27 17:50 ` Matthew Garrett
2010-05-27 18:17 ` Alan Cox
2010-05-27 18:20 ` Matthew Garrett
2010-05-27 19:09 ` Alan Cox
2010-05-27 21:55 ` Rafael J. Wysocki
2010-05-27 22:20 ` Alan Cox
2010-05-27 23:50 ` Rafael J. Wysocki
2010-05-27 18:18 ` Thomas Gleixner
2010-05-27 18:23 ` Matthew Garrett
2010-05-27 19:59 ` Alan Cox
2010-05-27 17:59 ` [linux-pm] " Thomas Gleixner
2010-05-27 18:26 ` Matthew Garrett
2010-05-27 18:53 ` Thomas Gleixner
2010-05-27 19:06 ` Matthew Garrett
2010-05-27 20:23 ` Thomas Gleixner
2010-05-27 20:38 ` Matthew Garrett
2010-05-27 21:26 ` Alan Stern
2010-05-27 21:33 ` Thomas Gleixner
2010-05-27 21:38 ` Matthew Garrett
2010-05-27 21:49 ` Alan Stern
2010-05-28 8:26 ` Thomas Gleixner
2010-05-27 20:03 ` Alan Cox
2010-06-21 15:57 ` [linux-pm] " Pavel Machek
2010-05-27 17:36 ` Alan Stern
2010-05-27 18:08 ` Thomas Gleixner
2010-05-27 22:01 ` Rafael J. Wysocki
2010-05-27 21:25 ` Alan Cox
2010-05-27 21:38 ` Alan Stern
2010-05-27 22:08 ` Alan Cox
2010-05-27 22:09 ` Matthew Garrett
2010-05-27 22:23 ` Alan Cox
2010-05-27 22:36 ` Matthew Garrett
2010-05-27 22:55 ` Alan Cox
2010-05-28 4:31 ` tytso
2010-05-28 7:11 ` Peter Zijlstra
2010-05-29 0:43 ` Arve Hjønnevåg
2010-05-29 8:10 ` Peter Zijlstra
2010-05-29 14:16 ` Alan Stern
2010-05-29 16:10 ` James Bottomley
2010-05-29 18:12 ` Peter Zijlstra
2010-05-31 20:12 ` Florian Mickler
2010-05-31 20:47 ` Florian Mickler
2010-06-05 17:04 ` Felipe Contreras
2010-06-05 19:04 ` Rafael J. Wysocki
2010-06-05 19:16 ` Peter Zijlstra
2010-06-05 19:39 ` Rafael J. Wysocki
2010-06-05 19:52 ` Peter Zijlstra
2010-06-05 19:53 ` Felipe Contreras
2010-05-31 21:13 ` Florian Mickler
2010-05-31 20:52 ` James Bottomley
2010-05-31 21:14 ` Rafael J. Wysocki
2010-06-05 17:16 ` Felipe Contreras
2010-06-05 19:49 ` Florian Mickler
2010-06-05 19:56 ` Felipe Contreras
2010-06-05 21:52 ` Florian Mickler
2010-05-29 18:12 ` Peter Zijlstra
2010-05-29 18:12 ` Peter Zijlstra
2010-05-31 20:49 ` Thomas Gleixner
2010-05-31 21:21 ` James Bottomley
2010-05-31 21:46 ` Thomas Gleixner
2010-06-01 5:21 ` Arve Hjønnevåg
2010-06-01 11:10 ` Thomas Gleixner
2010-06-02 3:32 ` Arve Hjønnevåg
2010-06-02 7:00 ` Thomas Gleixner
2010-06-02 7:17 ` Arve Hjønnevåg
2010-06-02 7:21 ` Thomas Gleixner
2010-05-31 22:17 ` Thomas Gleixner
2010-06-01 13:51 ` Matthew Garrett
2010-06-01 21:01 ` James Bottomley
2010-06-01 21:39 ` David Brownell
2010-06-01 22:24 ` Rafael J. Wysocki
2010-06-01 22:36 ` James Bottomley
2010-06-02 1:10 ` Arve Hjønnevåg
2010-06-02 2:44 ` Gross, Mark
2010-06-02 3:15 ` Arve Hjønnevåg
2010-06-02 3:26 ` Gross, Mark
2010-06-02 4:02 ` James Bottomley
2010-06-02 4:41 ` Arve Hjønnevåg
2010-06-02 15:05 ` James Bottomley
2010-06-02 19:47 ` Florian Mickler
2010-06-02 20:41 ` James Bottomley
2010-06-02 22:27 ` Arve Hjønnevåg
2010-06-02 23:03 ` James Bottomley
2010-06-02 23:06 ` Florian Mickler
2010-06-02 23:15 ` Gross, Mark
2010-06-03 10:03 ` Alan Cox
2010-06-03 10:05 ` Peter Zijlstra
2010-06-03 14:42 ` Kevin Hilman
2010-06-03 14:52 ` Gross, Mark
2010-06-03 16:58 ` [linux-pm] " Kevin Hilman
2010-06-03 17:01 ` James Bottomley
2010-06-03 17:16 ` Muralidhar, Rajeev D
2010-06-03 21:50 ` Bryan Huntsman
2010-06-03 13:24 ` James Bottomley
2010-06-03 14:18 ` Florian Mickler
2010-06-03 14:26 ` Gross, Mark
2010-06-03 14:35 ` Thomas Gleixner
2010-06-03 14:55 ` James Bottomley
2010-06-02 2:45 ` mark gross
2010-06-02 4:14 ` James Bottomley
2010-05-31 21:41 ` Thomas Gleixner
2010-05-31 22:23 ` Rafael J. Wysocki
2010-05-31 22:27 ` Thomas Gleixner
2010-05-31 23:47 ` [linux-pm] " James Bottomley
2010-05-28 9:37 ` Alan Cox
2010-05-28 11:41 ` Matthew Garrett
2010-05-28 12:26 ` Igor Stoppa
2010-05-28 12:52 ` Brian Swetland
2010-05-28 13:32 ` Igor Stoppa
2010-05-28 13:27 ` Brian Swetland
2010-05-28 14:12 ` Igor Stoppa
2010-05-28 23:42 ` Felipe Contreras
2010-05-29 8:28 ` Florian Mickler
2010-05-29 8:56 ` Florian Mickler
2010-05-31 5:55 ` Igor Stoppa
2010-06-05 16:58 ` Felipe Contreras
2010-05-28 14:20 ` Alan Cox
2010-05-28 13:39 ` tytso
2010-05-28 14:14 ` Igor Stoppa
2010-05-28 14:21 ` Matthew Garrett
2010-05-28 14:29 ` Brian Swetland
2010-05-28 14:41 ` Matthew Garrett
2010-05-28 15:06 ` Alan Cox
2010-05-28 15:13 ` Brian Swetland
2010-05-28 16:31 ` Alan Cox
2010-05-28 17:01 ` Alan Stern
2010-05-28 21:53 ` Arve Hjønnevåg
2010-05-28 17:27 ` Zygo Blaxell
2010-05-28 18:16 ` Peter Zijlstra
2010-05-28 19:51 ` Zygo Blaxell
2010-05-29 8:43 ` Vitaly Wool
2010-05-28 13:54 ` Alan Cox
2010-05-28 14:28 ` Igor Stoppa
2010-05-28 12:16 ` Theodore Tso
2010-05-28 12:28 ` Theodore Tso
2010-05-28 12:49 ` [linux-pm] " Igor Stoppa
2010-05-28 12:31 ` Theodore Tso
2010-05-28 13:30 ` Igor Stoppa
2010-05-28 9:53 ` Alan Cox
2010-05-28 4:55 ` Brian Swetland
2010-05-28 6:39 ` Florian Mickler
2010-05-28 2:47 ` Arve Hjønnevåg
2010-05-28 9:17 ` Alan Cox
2010-05-28 9:32 ` [linux-pm] " Arve Hjønnevåg
2010-05-28 11:16 ` Alan Cox
2010-05-28 11:20 ` [linux-pm] " Arve Hjønnevåg
2010-05-28 13:55 ` Alan Cox
2010-05-28 14:05 ` Matthew Garrett
2010-05-28 12:21 ` Alan Cox
2010-05-28 12:30 ` [linux-pm] " Peter Zijlstra
2010-05-28 13:02 ` Alan Cox
2010-05-28 13:20 ` Peter Zijlstra
2010-05-28 14:59 ` Peter Zijlstra
2010-05-28 15:14 ` Alan Stern
2010-05-28 15:53 ` Florian Mickler
2010-05-28 21:44 ` Rafael J. Wysocki
2010-05-29 7:53 ` Peter Zijlstra
2010-05-29 20:12 ` Rafael J. Wysocki
2010-05-28 12:31 ` Matthew Garrett
2010-05-28 13:54 ` Alan Cox
2010-05-28 14:02 ` Matthew Garrett
2010-05-28 15:24 ` Alan Cox
2010-05-28 14:35 ` Alan Stern
2010-05-28 15:18 ` Peter Zijlstra
2010-05-28 15:30 ` Alan Stern
2010-05-29 8:39 ` Vitaly Wool
2010-05-28 14:07 ` Alan Stern
2010-05-31 1:57 ` Zygo Blaxell
2010-05-28 9:21 ` resume latency QoS support, unify suspend/resume into idle states Ingo Molnar
2010-05-28 9:59 ` Arve Hjønnevåg
2010-05-27 17:00 ` [linux-pm] [PATCH 0/8] Suspend block api (version 8) Alan Stern
2010-05-27 17:24 ` Thomas Gleixner
2010-05-27 17:31 ` Matthew Garrett
2010-05-27 17:34 ` Peter Zijlstra
2010-05-27 17:40 ` Matthew Garrett
2010-05-27 17:47 ` Peter Zijlstra
2010-05-27 19:22 ` Alan Stern
2010-05-27 22:41 ` Rafael J. Wysocki
2010-05-27 23:15 ` Alan Cox
2010-05-27 23:42 ` [linux-pm] " Kevin Hilman
2010-05-28 0:05 ` Rafael J. Wysocki
2010-05-28 0:49 ` Mike Chan
2010-05-28 7:47 ` Peter Zijlstra
2010-05-28 13:22 ` Matthew Garrett
2010-05-27 18:05 ` Alan Cox
2010-05-27 18:15 ` Matthew Garrett
2010-05-27 18:44 ` Kevin Hilman
2010-05-27 22:45 ` Rafael J. Wysocki
2010-05-27 18:14 ` Thomas Gleixner
2010-05-27 17:44 ` Alan Stern
2010-05-27 17:52 ` Peter Zijlstra
2010-05-27 17:57 ` Matthew Garrett
2010-05-27 18:02 ` Peter Zijlstra
2010-05-27 18:14 ` Matthew Garrett
2010-05-27 18:18 ` Peter Zijlstra
2010-05-27 18:29 ` Matthew Garrett
2010-05-27 18:55 ` Thomas Gleixner
2010-05-27 19:03 ` Alan Cox
2010-05-27 18:58 ` Thomas Gleixner
2010-05-27 19:13 ` Matthew Garrett
2010-05-27 19:50 ` Alan Cox
2010-05-27 20:02 ` [linux-pm] " Matthew Garrett
2010-05-27 23:10 ` Rafael J. Wysocki
2010-05-27 23:50 ` [linux-pm] " Alan Cox
2010-05-28 0:06 ` Dmitry Torokhov
2010-05-28 0:39 ` Rafael J. Wysocki
2010-05-28 0:45 ` Arve Hjønnevåg
2010-05-28 7:43 ` Peter Zijlstra
2010-05-28 11:04 ` Alan Cox
2010-05-28 11:05 ` [linux-pm] " Arve Hjønnevåg
2010-05-28 7:29 ` Peter Zijlstra
2010-05-28 22:18 ` Rafael J. Wysocki
2010-05-29 7:59 ` Peter Zijlstra
2010-05-27 18:20 ` Alan Cox
2010-05-27 19:04 ` Alan Stern
2010-05-27 19:27 ` Alan Cox
2010-05-27 19:32 ` Alan Stern
2010-05-27 23:24 ` Rafael J. Wysocki
2010-05-28 0:59 ` Alan Stern
2010-05-28 7:19 ` [linux-pm] " Peter Zijlstra
2010-05-28 14:49 ` Alan Stern
2010-05-27 18:05 ` Thomas Gleixner
2010-05-27 18:17 ` Matthew Garrett
2010-05-28 8:44 ` Florian Mickler
2010-05-28 9:18 ` Arve Hjønnevåg
2010-05-28 10:25 ` Florian Mickler
2010-05-28 11:35 ` Arve Hjønnevåg
2010-05-28 12:09 ` Florian Mickler
2010-05-28 22:24 ` Rafael J. Wysocki
2010-05-29 1:11 ` [linux-pm] " Arve Hjønnevåg
2010-05-29 20:27 ` Rafael J. Wysocki
2010-05-29 21:55 ` [linux-pm] " Arve Hjønnevåg
2010-05-30 20:02 ` Rafael J. Wysocki
2010-05-31 9:16 ` Arve Hjønnevåg
2010-05-31 21:47 ` Rafael J. Wysocki
2010-06-01 4:57 ` Arve Hjønnevåg
2010-06-01 6:57 ` Igor Stoppa
2010-06-01 12:17 ` Thomas Gleixner
2010-06-02 3:23 ` Arve Hjønnevåg
2010-06-02 8:29 ` Thomas Gleixner
2010-06-02 8:54 ` Arve Hjønnevåg
2010-06-02 9:07 ` Thomas Gleixner
2010-06-02 9:32 ` Arve Hjønnevåg
2010-06-02 9:39 ` Peter Zijlstra
2010-06-02 10:00 ` Arve Hjønnevåg
2010-06-02 10:21 ` Peter Zijlstra
2010-06-02 20:13 ` Florian Mickler
2010-06-03 7:40 ` Peter Zijlstra
2010-06-03 14:12 ` Florian Mickler
2010-06-03 15:28 ` Peter Zijlstra
2010-06-04 15:43 ` Florian Mickler
2010-06-05 17:30 ` Felipe Contreras
2010-06-05 19:56 ` Florian Mickler
2010-06-05 20:06 ` Felipe Contreras
2010-06-05 20:50 ` Florian Mickler
2010-06-09 8:13 ` Felipe Contreras
2010-06-05 17:44 ` Felipe Contreras
2010-06-05 20:01 ` Florian Mickler
2010-06-05 20:26 ` Felipe Contreras
2010-06-05 21:11 ` [linux-pm] " Florian Mickler
2010-06-05 21:24 ` Thomas Gleixner
2010-06-05 21:34 ` Florian Mickler
2010-06-05 21:40 ` Thomas Gleixner
2010-06-02 9:10 ` Peter Zijlstra
2010-06-02 11:58 ` Alan Cox
2010-05-27 17:21 ` [linux-pm] " Florian Mickler
2010-05-27 17:25 ` Peter Zijlstra
2010-05-27 17:42 ` Florian Mickler
2010-05-27 17:52 ` Peter Zijlstra
2010-05-27 17:54 ` Matthew Garrett
2010-05-27 18:02 ` Peter Zijlstra
2010-05-27 19:19 ` Alan Stern
2010-05-28 5:15 ` Peter Zijlstra
2010-05-28 6:16 ` Arve Hjønnevåg
2010-05-27 7:42 ` Vitaly Wool
2010-05-27 8:05 ` Arve Hjønnevåg
2010-05-28 2:09 ` Ben Gamari
2010-05-28 7:03 ` Florian Mickler
2010-05-26 10:06 ` Arve Hjønnevåg
2010-05-26 10:09 ` Peter Zijlstra
2010-05-26 10:25 ` Arve Hjønnevåg
2010-05-26 10:32 ` Peter Zijlstra
2010-05-26 10:40 ` Brian Swetland
2010-05-26 10:40 ` Arve Hjønnevåg
2010-05-26 10:49 ` Peter Zijlstra
2010-05-26 10:53 ` Arve Hjønnevåg
2010-05-26 11:12 ` Peter Zijlstra
2010-05-26 12:35 ` Alan Cox
2010-05-26 12:53 ` Peter Zijlstra
2010-05-26 20:18 ` Zygo Blaxell
2010-05-26 22:52 ` Arve Hjønnevåg
2010-05-26 11:23 ` [linux-pm] " Vitaly Wool
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=alpine.LFD.2.00.1005271642440.3032@localhost.localdomain \
--to=tglx@linutronix.de \
--cc=Paul@smtp1.linux-foundation.org \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=arve@android.com \
--cc=felipe.balbi@nokia.com \
--cc=florian@mickler.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-omap@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=mjg59@srcf.ucam.org \
--cc=peterz@infradead.org \
--cc=vitalywool@gmail.com \
/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