From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: kevin granade <kevin.granade@gmail.com>
Cc: david@lang.hm, "Arve Hjønnevåg" <arve@android.com>,
"Matthew Garrett" <mjg59@srcf.ucam.org>,
"Rafael J. Wysocki" <rjw@sisk.pl>,
"Arjan van de Ven" <arjan@infradead.org>,
linux-pm@lists.linux-foundation.org,
linux-kernel@vger.kernel.org, pavel@ucw.cz, florian@mickler.org,
stern@rowland.harvard.edu, swetland@google.com,
peterz@infradead.org, tglx@linutronix.de,
alan@lxorguk.ukuu.org.uk
Subject: Re: Attempted summary of suspend-blockers LKML thread
Date: Thu, 5 Aug 2010 16:05:07 -0700 [thread overview]
Message-ID: <20100805230507.GR2447@linux.vnet.ibm.com> (raw)
In-Reply-To: <AANLkTimaaLSwVusJ=w5-QptoauBnHH0JvCvmWUr0y+KD@mail.gmail.com>
On Thu, Aug 05, 2010 at 03:51:35PM -0500, kevin granade wrote:
> On Thu, Aug 5, 2010 at 3:31 PM, Paul E. McKenney
> <paulmck@linux.vnet.ibm.com> wrote:
> > On Thu, Aug 05, 2010 at 01:13:31PM -0500, kevin granade wrote:
> >> On Thu, Aug 5, 2010 at 10:46 AM, <david@lang.hm> wrote:
> >> > On Thu, 5 Aug 2010, Paul E. McKenney wrote:
> >> >
> >> >> On Wed, Aug 04, 2010 at 10:18:40PM -0700, david@lang.hm wrote:
> >> >>>
> >> >>> On Wed, 4 Aug 2010, Paul E. McKenney wrote:
> >> >>>>
> >> >>>> On Wed, Aug 04, 2010 at 05:25:53PM -0700, david@lang.hm wrote:
> >> >>>>>
> >> >>>>> On Wed, 4 Aug 2010, Paul E. McKenney wrote:
> >> >>
> >> >> [ . . . ]
> >> >>
> >> >>>>>> The music player is an interesting example. It would be idle most
> >> >>>>>> of the time, given that audio output doesn't consume very much CPU.
> >> >>>>>> So you would not want to suspend the system just because there were
> >> >>>>>> no runnable processes. In contrast, allowing the music player to
> >> >>>>>> hold a wake lock lets the system know that it would not be appropriate
> >> >>>>>> to suspend.
> >> >>>>>>
> >> >>>>>> Or am I misunderstanding what you are proposing?
> >> >>>>>
> >> >>>>> the system would need to be idle for 'long enough' (configurable)
> >> >>>>> before deciding to suspend, so as long as 'long enough' is longer
> >> >>>>> than the music player is idle this would not be a problem.
> >> >>>>
> >> >>>> From a user standpoint, having the music player tell the system when
> >> >>>> it is OK to suspend (e.g., when the user has paused playback) seems
> >> >>>> a lot nicer than having configurable timeouts that need tweaking.
> >> >>>
> >> >>> every system that I have seen has a configurable "sleep if it's idle
> >> >>> for this long" knob. On the iphone (work issue, I didn't want it)
> >> >>> that I am currently using it can be configured from 1 min to 5 min.
> >> >>>
> >> >>> this is the sort of timeout I am talking about.
> >> >>>
> >> >>> with something in the multi-minute range for the 'do a full suspend'
> >> >>> doing a wakeup every few 10s of seconds is perfectly safe.
> >> >>
> >> >> Ah, I was assuming -much- shorter "do full suspend" timeouts.
> >> >>
> >> >> My (possibly incorrect) assumption is based on the complaint that led
> >> >> to my implementing RCU_FAST_NO_HZ. A (non-Android) embedded person was
> >> >> quite annoyed (to put it mildly) at the earlier version of RCU because
> >> >> it prevented the system from entering the power-saving dyntick-idle mode,
> >> >> not for minutes, or even for seconds, but for a handful of -milliseconds-.
> >> >> This was my first hint that "energy efficiency" means something completely
> >> >> different in embedded systems than it does in the servers that I am
> >> >> used to.
> >> >>
> >> >> But I must defer to the Android guys on this -- who knows, perhaps
> >> >> multi-minute delays to enter full-suspend mode are OK for them.
> >> >
> >> > if the system was looking at all applications I would agree that the timeout
> >> > should be much shorter.
> >> >
> >> > I have a couple devices that are able to have the display usable, even if
> >> > the CPU is asleep (the OLPC and the Kindle, two different display
> >> > technologies). With these devices I would like to see the suspend happen so
> >> > fast that it can suspend between keystrokes.
> >> >
> >> > however, in the case of Android I think the timeouts have to end up being
> >> > _much_ longer. Otherwise you have the problem of loading an untrusted book
> >> > reader app on the device and the device suspends while you are reading the
> >> > page.
> >> >
> >> > currently Android works around this by having a wakelock held whenever the
> >> > display is on. This seems backwards to me, the display should be on because
> >> > the system is not suspended, not the system is prevented from suspending
> >> > because the display is on.
> >> >
> >> > Rather than having the display be on causing a wavelock to be held (with the
> >> > code that is controls the display having a timeout for how long it leaves
> >> > the display on), I would invert this and have the timeout be based on system
> >> > activity, and when it decides the system is not active, turn off the display
> >> > (along with other things as it suspends)
> >>
> >> IIRC, this was a major point of their (Android's) power management
> >> policy. User input of any kind would reset the "display active"
> >> timeout, which is the primary thing keeping random untrusted
> >> user-facing programs from being suspended while in use. They seemed
> >> to consider this to be a special case in their policy, but from the
> >> kernel's point of view it is just another suspend blocker being held.
> >>
> >> I'm not sure this is the best use case to look at though, because
> >> since it is user-facing, the timeout durations are on a different
> >> scale than the ones they are really worried about. I think another
> >> category of use case that they are worried about is:
> >>
> >> (in suspend) -> wakeup due to network -> process network activity -> suspend
> >>
> >> or an example that has been mentioned previously:
> >>
> >> (in suspend) -> wakeup due to alarm for audio processing -> process
> >> batch of audio -> suspend
> >>
> >> In both of these cases, the display may never power on (phone might
> >> beep to indicate txt message or email, audio just keeps playing), so
> >> the magnitude of the "timeout" for suspending again should be very
> >> small. Specifically, they don't want there to be a timeout at all, so
> >> as little time as possible time is spent out of suspend in addition to
> >> the time required to handle the event that caused wakeup.
> >
> > It would be good to get some sort of range for the "timeout". In the
> > audio-output case, my understanding that the spacing between bursts of
> > audio-processing activity is measured in some hundreds of milliseconds,
> > in which case one would want the delays until suspend to be on the
> > millisecond scale. But does Android really suspend between bursts of
> > audio processing while playing music? Very cool if so! ;-)
>
> Oops, yea that's actually a really bad example, that's probably
> something that would be handled by low-power states. I think the
> incoming text message example is a good one though. There seemed to
> be a focus on user-interaction scale time scales, and I wanted to
> point out that there are also very short duration time scales to
> consider as well.
>
> *back to lurking*
I really don't know the answer myself, so I was really asking the
question rather than trying to catch you out.
Thanx, Paul
> Kevin
>
> >
> > Thanx, Paul
> >
> >> >>>>>>> if the backlight being on holds the wakelock, it would seem that
> >> >>>>>>> almost every other use of the wakelock could (and probably should)
> >> >>>>>>> be replaced by something that tickles the display to stay on longer.
> >> >>>>>>
> >> >>>>>> The problem with this approach is that the display consumes quite a
> >> >>>>>> bit of power, so you don't want to leave it on unnecessarily. So if
> >> >>>>>> the system is doing something (for example, playing music) that does
> >> >>>>>> not require the display, you really want the display to be off.
> >> >>>>>
> >> >>>>> what percentage (and types) of apps are really useful with the
> >> >>>>> display off. I think that there are relativly few apps that you
> >> >>>>> really want to keep running if the display is off.
> >> >>>>
> >> >>>> The length of time those apps are running is the governing factor
> >> >>>> for battery life, and not the number of such apps, right?
> >> >>>
> >> >>> correct, but the number of such apps indicates the scope of the problem.
> >> >>
> >> >> The number of such apps certainly indicates the amount of effort required
> >> >> to modify them, if required. Is that what you are getting at?
> >> >
> >> > yes.
> >> >
> >> >>>> From another e-mail tonight it sounds like almost everything
> >> >>>> already talks
> >> >>>
> >> >>> to a userspace daemon, so if "(the power management service in the
> >> >>> system_server, possibly the media_server and the radio interface
> >> >>> glue)" (plus possibly some kernel activity) are the only things
> >> >>> looked at when considering if it's safe to sleep or not, all of
> >> >>> these can (or already do) do 'something' every few seconds, making
> >> >>> this problem sound significantly smaller than it sounded like
> >> >>> before.
> >> >>>
> >> >>> Android could even keep it's user-space API between the system power
> >> >>> daemon and the rest of userspace the same if they want to.
> >> >>>
> >> >>> over time, additional apps could be considered 'trusted' (or flagged
> >> >>> that way by the user) and not have to interact with the power daemon
> >> >>> to keep things alive.
> >> >>
> >> >> Hmmm... Isn't it the "trusted" (AKA PM-driving) apps that interact with
> >> >> the power daemon via suspend blockers, rather than the other way around?
> >> >
> >> > I was looking at it from a kernel point of view, "trusted" (AKA PM-driving)
> >> > apps are ones that have permission to grab the wakelock. Any app/daemon that
> >> > is so trusted can communicate with anything else in userspace as part of
> >> > making it's decision on whento take the wakelock, but those other
> >> > applications would not qualify as "trusted" in my eyes.
> >> >
> >> >>> as for intramentation, the key tool to use to see why a system isn't
> >> >>> going to sleep would be powertop, just like on other linux systems.
> >> >>
> >> >> Powertop is indeed an extremely valuable tool, but I am not certain
> >> >> that it really provides the information that the Android guys need.
> >> >> If I understand Arve's and Brian's posts, here is the scenario that they
> >> >> are trying to detect:
> >> >>
> >> >> o Some PM-driving application has a bug in which it fails to
> >> >> release a wakelock, thus blocking suspend indefinitely.
> >> >>
> >> >> o This PM-driving application, otherwise being a good citizen,
> >> >> blocks.
> >> >>
> >> >> o There are numerous power-oblivious apps running, consuming
> >> >> significant CPU.
> >> >>
> >> >> What the Android developers need to know is that the trusted application
> >> >> is wrongly holding a wakelock. Won't powertop instead tell them about
> >> >> all the power-oblivious apps?
> >> >
> >> > in my proposal (without a wakelock), powertop would tell you what
> >> > applications are running and setting timers. If we can modify the
> >> > kernel/suspend decision code to only look at processes in one cgroup when
> >> > deciding if the system should go to sleep, a similar modification to
> >> > poewrtop should let you only show stats on the "trusted" applications.
> >> >
> >> > If you have a userspace power management daemon that accepts requests from
> >> > untrusted programs and does something to keep the system from sleeping
> >> > (either taking a wakelock or setting a 'short' timer), it needs to keep the
> >> > records of this itself because otherwise all the kernel will see (with
> >> > either powertop or wakelock reporting) is that the power management daemon
> >> > is what kept the system from sleeping.
> >> >
> >> > David Lang
> >> > --
> >> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> >> > the body of a message to majordomo@vger.kernel.org
> >> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> >> > Please read the FAQ at http://www.tux.org/lkml/
> >> >
> >
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
next prev parent reply other threads:[~2010-08-05 23:05 UTC|newest]
Thread overview: 412+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-07-31 17:58 Attempted summary of suspend-blockers LKML thread Paul E. McKenney
2010-07-31 20:19 ` Alan Stern
2010-08-01 4:36 ` Paul E. McKenney
2010-08-01 19:41 ` Alan Stern
2010-08-01 20:11 ` Paul E. McKenney
2010-08-01 22:16 ` Alan Stern
2010-08-01 22:38 ` [linux-pm] " David Brownell
2010-08-02 0:29 ` Paul E. McKenney
2010-08-02 0:28 ` Paul E. McKenney
2010-08-01 15:41 ` Rafael J. Wysocki
2010-08-01 19:56 ` Paul E. McKenney
2010-08-01 22:44 ` Rafael J. Wysocki
2010-08-02 0:32 ` Paul E. McKenney
2010-08-01 4:52 ` Arjan van de Ven
2010-08-01 5:48 ` Paul E. McKenney
2010-08-01 6:01 ` Arjan van de Ven
2010-08-01 19:12 ` Paul E. McKenney
2010-08-01 20:40 ` Ted Ts'o
2010-08-01 23:00 ` Arjan van de Ven
2010-08-01 23:02 ` Rafael J. Wysocki
2010-08-01 23:12 ` Arjan van de Ven
2010-08-01 23:19 ` [linux-pm] " David Brownell
2010-08-01 23:30 ` James Bottomley
2010-08-02 12:12 ` Ted Ts'o
2010-08-02 16:51 ` James Bottomley
2010-08-02 18:47 ` Ted Ts'o
2010-08-02 3:03 ` Paul E. McKenney
2010-08-02 4:05 ` Arjan van de Ven
2010-08-02 5:06 ` david
2010-08-02 5:44 ` Florian Mickler
2010-08-02 6:06 ` david
2010-08-02 6:40 ` Florian Mickler
2010-08-02 6:53 ` Florian Mickler
2010-08-02 7:02 ` david
2010-08-02 7:23 ` Florian Mickler
2010-08-02 9:06 ` david
2010-08-03 4:41 ` Paul Menage
2010-08-03 11:26 ` Florian Mickler
2010-08-03 4:38 ` Paul Menage
2010-08-03 11:25 ` Florian Mickler
2010-08-02 14:09 ` Paul E. McKenney
2010-08-03 0:08 ` david
2010-08-03 3:21 ` Arve Hjønnevåg
2010-08-03 4:44 ` david
2010-08-03 5:01 ` Arve Hjønnevåg
2010-08-03 5:06 ` david
2010-08-03 22:47 ` Arve Hjønnevåg
2010-08-03 23:19 ` david
2010-08-04 0:10 ` Paul E. McKenney
2010-08-04 0:51 ` david
2010-08-04 3:39 ` Arve Hjønnevåg
2010-08-04 4:47 ` david
2010-08-04 5:46 ` Florian Mickler
2010-08-04 5:59 ` Arve Hjønnevåg
2010-08-04 6:30 ` david
2010-08-04 7:10 ` Arve Hjønnevåg
2010-08-04 7:35 ` Florian Mickler
2010-08-04 7:42 ` david
2010-08-04 11:47 ` Rafael J. Wysocki
2010-08-04 18:51 ` david
2010-08-04 20:31 ` Rafael J. Wysocki
2010-08-04 23:04 ` david
2010-08-04 23:26 ` Rafael J. Wysocki
2010-08-04 23:39 ` david
2010-08-05 0:10 ` Rafael J. Wysocki
2010-08-05 13:21 ` david
2010-08-04 4:58 ` Olivier Galibert
2010-08-04 6:03 ` Arve Hjønnevåg
2010-08-04 6:28 ` Olivier Galibert
2010-08-04 6:50 ` Arve Hjønnevåg
2010-08-04 16:27 ` Paul E. McKenney
2010-08-04 20:43 ` Rafael J. Wysocki
2010-08-04 3:57 ` Arjan van de Ven
2010-08-04 4:55 ` david
2010-08-04 6:12 ` Florian Mickler
2010-08-04 6:48 ` david
2010-08-04 5:22 ` Arve Hjønnevåg
2010-08-04 18:39 ` Paul E. McKenney
2010-08-04 18:32 ` Paul E. McKenney
2010-08-04 20:46 ` Rafael J. Wysocki
2010-08-02 5:34 ` Florian Mickler
2010-08-02 12:27 ` Ted Ts'o
2010-08-02 14:08 ` Rafael J. Wysocki
2010-08-02 14:00 ` Paul E. McKenney
2010-08-01 22:47 ` Arjan van de Ven
2010-08-02 1:10 ` Paul E. McKenney
2010-08-02 3:06 ` Arjan van de Ven
2010-08-02 14:12 ` Paul E. McKenney
2010-08-02 13:52 ` Rafael J. Wysocki
2010-08-02 20:36 ` Paul E. McKenney
2010-08-02 21:33 ` Rafael J. Wysocki
2010-08-02 22:27 ` Paul E. McKenney
2010-08-02 22:40 ` Rafael J. Wysocki
2010-08-03 4:56 ` Arve Hjønnevåg
2010-08-03 14:11 ` Paul E. McKenney
2010-08-04 1:34 ` Arjan van de Ven
2010-08-04 16:32 ` Paul E. McKenney
2010-08-04 16:35 ` Matthew Garrett
2010-08-04 18:30 ` david
2010-08-04 18:55 ` Matthew Garrett
2010-08-04 19:15 ` david
2010-08-04 19:21 ` Matthew Garrett
2010-08-04 19:29 ` david
2010-08-04 19:57 ` Matthew Garrett
2010-08-04 22:20 ` david
2010-08-05 13:38 ` Matthew Garrett
2010-08-05 14:34 ` david
2010-08-05 15:15 ` Brian Swetland
2010-08-04 20:08 ` Paul E. McKenney
2010-08-04 22:29 ` david
2010-08-04 23:06 ` Paul E. McKenney
2010-08-04 23:15 ` david
2010-08-04 20:51 ` Rafael J. Wysocki
2010-08-04 20:56 ` Matthew Garrett
2010-08-04 21:15 ` Paul E. McKenney
2010-08-04 21:31 ` Rafael J. Wysocki
2010-08-04 22:08 ` Arve Hjønnevåg
2010-08-05 0:20 ` Rafael J. Wysocki
2010-08-05 1:02 ` Arve Hjønnevåg
2010-08-05 3:59 ` Paul E. McKenney
2010-08-05 13:40 ` Matthew Garrett
2010-08-05 14:22 ` david
2010-08-05 14:29 ` Brian Swetland
2010-08-05 14:33 ` Matthew Garrett
2010-08-05 15:34 ` Rafael J. Wysocki
2010-08-05 22:02 ` Arve Hjønnevåg
2010-08-05 23:41 ` Rafael J. Wysocki
2010-08-06 0:29 ` Brian Swetland
2010-08-06 0:42 ` Rafael J. Wysocki
2010-08-06 17:09 ` Paul E. McKenney
2010-08-06 1:29 ` Arve Hjønnevåg
2010-08-06 12:43 ` Mark Brown
2010-08-06 16:00 ` Paul E. McKenney
2010-08-06 19:44 ` Alan Stern
2010-08-06 22:04 ` Rafael J. Wysocki
2010-08-07 8:49 ` Rafael J. Wysocki
2010-08-07 13:35 ` Alan Stern
2010-08-08 17:25 ` Rafael J. Wysocki
2010-08-08 19:07 ` Alan Stern
2010-08-07 3:19 ` Arve Hjønnevåg
2010-08-07 8:44 ` Rafael J. Wysocki
2010-08-07 10:02 ` Arve Hjønnevåg
2010-08-07 10:23 ` Arve Hjønnevåg
2010-08-08 19:17 ` Rafael J. Wysocki
2010-08-09 5:29 ` Arve Hjønnevåg
2010-08-10 2:53 ` Rafael J. Wysocki
2010-08-10 4:28 ` Arve Hjønnevåg
2010-08-11 2:11 ` Rafael J. Wysocki
2010-08-08 19:42 ` Alan Stern
2010-08-09 4:52 ` Arve Hjønnevåg
2010-08-08 19:55 ` Rafael J. Wysocki
2010-08-09 5:09 ` Arve Hjønnevåg
2010-08-05 2:39 ` Paul E. McKenney
2010-08-05 2:46 ` Brian Swetland
2010-08-05 4:05 ` Paul E. McKenney
2010-08-04 22:31 ` david
2010-08-04 22:51 ` Arve Hjønnevåg
2010-08-04 22:56 ` david
2010-08-04 23:10 ` Paul E. McKenney
2010-08-04 23:13 ` Anca Emanuel
2010-08-04 23:19 ` Paul E. McKenney
2010-08-04 23:19 ` david
2010-08-04 23:33 ` Rafael J. Wysocki
2010-08-04 23:53 ` david
2010-08-05 0:15 ` Rafael J. Wysocki
2010-08-05 13:28 ` david
2010-08-05 13:47 ` Matthew Garrett
2010-08-05 14:07 ` david
2010-08-05 14:16 ` Matthew Garrett
2010-08-05 14:23 ` Brian Swetland
2010-08-05 5:33 ` Florian Mickler
2010-08-05 5:56 ` Florian Mickler
2010-08-05 13:04 ` david
2010-08-04 23:15 ` Arve Hjønnevåg
2010-08-04 23:23 ` david
2010-08-04 23:30 ` Paul E. McKenney
2010-08-04 23:49 ` david
2010-08-05 0:17 ` Paul E. McKenney
2010-08-05 0:25 ` david
2010-08-05 0:48 ` Paul E. McKenney
2010-08-05 5:18 ` david
2010-08-05 15:12 ` Paul E. McKenney
2010-08-05 15:46 ` david
2010-08-05 18:09 ` Paul E. McKenney
2010-08-05 20:09 ` david
2010-08-05 18:13 ` kevin granade
2010-08-05 18:20 ` Brian Swetland
2010-08-05 20:30 ` david
2010-08-05 20:26 ` david
2010-08-05 23:19 ` Paul E. McKenney
2010-08-06 8:29 ` david
2010-08-06 17:24 ` Paul E. McKenney
2010-08-06 22:12 ` david
2010-08-05 20:31 ` Paul E. McKenney
2010-08-05 20:51 ` kevin granade
2010-08-05 22:09 ` david
2010-08-05 22:16 ` Brian Swetland
2010-08-05 23:03 ` Paul E. McKenney
2010-08-06 0:13 ` Brian Swetland
2010-08-06 0:16 ` david
2010-08-06 0:22 ` Brian Swetland
2010-08-06 1:01 ` david
2010-08-06 1:22 ` Brian Swetland
2010-08-06 8:07 ` david
2010-08-06 12:35 ` Mark Brown
2010-08-06 12:30 ` Mark Brown
2010-08-06 17:22 ` Paul E. McKenney
2010-08-06 17:33 ` Mark Brown
2010-08-06 18:18 ` Paul E. McKenney
2010-08-06 23:35 ` david
2010-08-07 0:14 ` Mark Brown
2010-08-07 0:36 ` Paul E. McKenney
2010-08-07 13:07 ` Mark Brown
2010-08-07 14:36 ` Paul E. McKenney
2010-08-07 1:00 ` david
2010-08-07 6:28 ` Ted Ts'o
2010-08-08 13:35 ` Felipe Contreras
2010-08-08 16:08 ` Matthew Garrett
2010-08-08 17:08 ` Felipe Contreras
2010-08-08 17:09 ` Matthew Garrett
2010-08-08 18:34 ` Mark Brown
2010-08-12 0:23 ` Felipe Contreras
2010-08-07 9:01 ` Rafael J. Wysocki
2010-08-07 10:00 ` david
2010-08-07 15:07 ` Paul E. McKenney
2010-08-07 20:17 ` david
2010-08-07 21:11 ` Paul E. McKenney
2010-08-05 23:05 ` Paul E. McKenney [this message]
2010-08-05 16:09 ` [linux-pm] " Mark Brown
2010-08-05 18:21 ` Paul E. McKenney
2010-08-04 23:40 ` Arve Hjønnevåg
2010-08-05 0:00 ` david
2010-08-04 20:42 ` Pavel Machek
2010-08-04 20:48 ` Matthew Garrett
2010-08-04 22:54 ` david
2010-08-04 20:51 ` Paul E. McKenney
2010-08-04 21:15 ` Pavel Machek
2010-08-04 21:39 ` Florian Mickler
2010-08-04 22:42 ` david
2010-08-04 21:40 ` Mark Brown
2010-08-05 1:58 ` Matt Helsley
2010-08-05 2:02 ` Brian Swetland
2010-08-05 3:25 ` Matt Helsley
2010-08-01 6:24 ` Mikael Abrahamsson
2010-08-01 6:49 ` Mikael Abrahamsson
2010-08-01 19:27 ` Paul E. McKenney
2010-08-01 22:49 ` Arjan van de Ven
2010-08-02 3:04 ` Paul E. McKenney
2010-08-01 19:45 ` Alan Stern
2010-08-01 23:16 ` [linux-pm] " James Bottomley
2010-08-02 1:11 ` Paul E. McKenney
2010-08-03 4:18 ` Arve Hjønnevåg
2010-08-03 15:41 ` Paul E. McKenney
2010-08-03 22:23 ` Arve Hjønnevåg
2010-08-04 1:09 ` Paul E. McKenney
2010-08-03 16:02 ` [linux-pm] " James Bottomley
2010-08-03 22:08 ` Arve Hjønnevåg
2010-08-04 4:00 ` James Bottomley
2010-08-04 5:43 ` Arve Hjønnevåg
2010-08-04 19:57 ` Attempted summary of suspend-blockers LKML thread, take two Paul E. McKenney
2010-08-05 13:18 ` david
2010-08-05 13:37 ` Brian Swetland
2010-08-05 23:35 ` Paul E. McKenney
2010-08-05 14:40 ` Paul E. McKenney
2010-08-09 7:26 ` Pavel Machek
2010-08-09 7:34 ` Brian Swetland
2010-08-06 22:54 ` Attempted summary of suspend-blockers LKML thread, take three Paul E. McKenney
2010-08-06 23:59 ` david
2010-08-07 0:25 ` Paul E. McKenney
2010-08-07 1:40 ` david
2010-08-07 2:41 ` Alan Stern
2010-08-07 3:08 ` david
2010-08-07 13:26 ` Alan Stern
2010-08-07 21:01 ` david
2010-08-08 15:36 ` Alan Stern
2010-08-07 2:05 ` Brian Swetland
2010-08-07 3:14 ` david
2010-08-07 6:15 ` Ted Ts'o
2010-08-07 9:11 ` Rafael J. Wysocki
2010-08-07 9:12 ` Rafael J. Wysocki
2010-08-07 14:46 ` Theodore Tso
2010-08-07 20:36 ` david
2010-08-08 16:17 ` Matthew Garrett
2010-08-07 9:38 ` david
2010-08-07 15:32 ` Paul E. McKenney
2010-08-07 21:20 ` david
2010-08-08 12:53 ` Felipe Contreras
2010-08-08 15:57 ` Ted Ts'o
2010-08-08 17:40 ` Felipe Contreras
2010-08-08 18:02 ` Brian Swetland
2010-08-08 21:38 ` Ted Ts'o
2010-08-09 10:24 ` Alan Cox
2010-08-09 18:16 ` Paul E. McKenney
2010-08-09 18:28 ` david
2010-08-09 18:54 ` Paul E. McKenney
2010-08-09 19:18 ` Alan Cox
2010-08-09 19:32 ` Brian Swetland
2010-08-10 1:17 ` david
2010-08-10 4:45 ` Paul E. McKenney
2010-08-10 8:38 ` Alan Cox
2010-08-10 14:11 ` Matthew Garrett
2010-08-10 14:40 ` Alan Cox
2010-08-10 14:55 ` Matthew Garrett
2010-08-10 14:44 ` Alan Cox
2010-08-11 0:44 ` Paul E. McKenney
2010-08-10 18:07 ` david
2010-08-10 18:13 ` Matthew Garrett
2010-08-10 18:18 ` david
2010-08-11 0:42 ` Paul E. McKenney
2010-08-11 1:28 ` david
2010-08-11 2:21 ` Paul E. McKenney
2010-08-11 3:00 ` david
2010-08-11 22:49 ` Paul E. McKenney
2010-08-11 20:00 ` Felipe Contreras
2010-08-11 22:12 ` Paul E. McKenney
2010-08-12 0:17 ` Felipe Contreras
2010-08-12 16:19 ` Paul E. McKenney
2010-08-12 17:52 ` Felipe Contreras
2010-08-12 18:38 ` Paul E. McKenney
2010-08-13 15:14 ` Paul E. McKenney
2010-08-13 15:28 ` Felipe Contreras
2010-08-13 17:13 ` Paul E. McKenney
2010-08-19 23:10 ` david
2010-08-20 4:58 ` Paul E. McKenney
2010-08-11 19:25 ` Felipe Contreras
2010-08-11 19:43 ` Mark Brown
2010-08-11 19:18 ` Felipe Contreras
2010-08-11 22:28 ` Paul E. McKenney
2010-08-12 0:28 ` Felipe Contreras
2010-08-12 1:06 ` Paul E. McKenney
2010-08-12 1:25 ` Felipe Contreras
2010-08-12 3:44 ` Paul E. McKenney
2010-08-12 10:36 ` Felipe Contreras
2010-08-12 10:47 ` Theodore Tso
2010-08-12 11:11 ` Felipe Contreras
2010-08-12 11:40 ` Alan Stern
2010-08-12 12:28 ` Felipe Contreras
2010-08-12 12:52 ` Ted Ts'o
2010-08-12 16:46 ` Felipe Contreras
2010-08-12 18:21 ` Ted Ts'o
2010-08-12 19:05 ` Felipe Contreras
2010-08-12 19:19 ` Brian Swetland
2010-08-12 19:57 ` Jesse Barnes
2010-08-13 3:28 ` Rafael J. Wysocki
2010-08-13 4:25 ` [linux-pm] " Paul Fox
2010-08-13 4:37 ` Arve Hjønnevåg
2010-08-13 15:07 ` Rafael J. Wysocki
2010-08-14 3:18 ` Neil Brown
2010-08-14 10:41 ` Pavel Machek
2010-08-13 16:20 ` Jesse Barnes
2010-08-17 13:18 ` Rafael J. Wysocki
2010-08-17 15:00 ` Alan Stern
2010-08-13 11:09 ` Felipe Contreras
2010-08-14 7:59 ` Pavel Machek
2010-08-13 10:39 ` Alan Cox
2010-08-14 7:50 ` Pavel Machek
2010-08-16 11:36 ` Bernd Petrovitsch
2010-08-16 15:16 ` Jesse Barnes
2010-08-17 0:20 ` Ted Ts'o
2010-08-17 0:55 ` Jesse Barnes
2010-08-17 7:08 ` Neil Brown
2010-08-17 15:33 ` Ted Ts'o
2010-08-17 17:33 ` Paul E. McKenney
2010-09-04 8:57 ` Pavel Machek
2010-08-12 14:09 ` Mark Brown
2010-08-12 16:57 ` Felipe Contreras
2010-08-12 17:33 ` Brian Swetland
2010-08-12 19:00 ` Felipe Contreras
2010-08-12 19:27 ` [linux-pm] " Dominik Brodowski
2010-08-12 17:43 ` Paul E. McKenney
2010-08-12 19:34 ` Felipe Contreras
2010-08-12 19:48 ` Brian Swetland
2010-08-12 19:52 ` [linux-pm] " Dominik Brodowski
2010-08-13 10:30 ` Alan Cox
2010-08-13 10:43 ` Felipe Contreras
2010-08-13 10:35 ` Alan Cox
2010-08-13 10:58 ` Felipe Contreras
2010-08-13 14:42 ` Paul E. McKenney
2010-08-28 8:51 ` Pavel Machek
2010-08-31 0:04 ` Paul E. McKenney
2010-08-13 15:22 ` Paul E. McKenney
2010-08-13 15:40 ` Felipe Contreras
2010-08-13 15:57 ` [linux-pm] " Dominik Brodowski
2010-08-13 16:06 ` Joe Perches
2010-08-13 16:19 ` Dominik Brodowski
2010-08-13 16:19 ` Felipe Contreras
2010-08-13 17:11 ` James Bottomley
2010-08-13 19:08 ` Ted Ts'o
2010-08-13 19:29 ` Brian Swetland
2010-08-14 0:43 ` James Bottomley
2010-08-16 21:11 ` Rafael J. Wysocki
2010-08-17 12:07 ` Igor Stoppa
2010-08-13 10:57 ` Alan Cox
2010-08-13 15:29 ` Paul E. McKenney
2010-08-14 7:38 ` Pavel Machek
2010-08-14 15:10 ` Paul E. McKenney
2010-08-14 16:53 ` Arjan van de Ven
2010-08-14 18:15 ` David Brownell
2010-08-15 7:00 ` Paul E. McKenney
2010-08-16 16:09 ` Matthew Garrett
2010-08-17 15:25 ` Ted Ts'o
2010-08-10 14:15 ` Mark Brown
2010-08-11 16:57 ` Felipe Contreras
2010-08-11 19:31 ` Ted Ts'o
2010-08-11 21:25 ` Felipe Contreras
2010-08-11 21:37 ` Brian Swetland
2010-08-11 22:03 ` Felipe Contreras
2010-08-11 22:12 ` Brian Swetland
2010-08-12 0:46 ` Felipe Contreras
2010-08-12 1:03 ` Brian Swetland
2010-08-08 12:40 ` Felipe Contreras
2010-08-08 18:07 ` Paul E. McKenney
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=20100805230507.GR2447@linux.vnet.ibm.com \
--to=paulmck@linux.vnet.ibm.com \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=arjan@infradead.org \
--cc=arve@android.com \
--cc=david@lang.hm \
--cc=florian@mickler.org \
--cc=kevin.granade@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=mjg59@srcf.ucam.org \
--cc=pavel@ucw.cz \
--cc=peterz@infradead.org \
--cc=rjw@sisk.pl \
--cc=stern@rowland.harvard.edu \
--cc=swetland@google.com \
--cc=tglx@linutronix.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;
as well as URLs for NNTP newsgroup(s).