From: "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>
To: "Arve Hjønnevåg" <arve@android.com>
Cc: david@lang.hm, Arjan van de Ven <arjan@infradead.org>,
"Ted Ts'o" <tytso@mit.edu>,
linux-pm@lists.linux-foundation.org,
linux-kernel <linux-kernel@vger.kernel.org>,
mjg59@srcf.ucam.org, pavel@ucw.cz, florian@mickler.org,
rjw@sisk.pl, 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: Wed, 4 Aug 2010 09:27:17 -0700 [thread overview]
Message-ID: <20100804162717.GA24163@linux.vnet.ibm.com> (raw)
In-Reply-To: <AANLkTinjH0C0bSK=Y2wKASnbJFsR2BN303xBXkaHbmRC@mail.gmail.com>
On Tue, Aug 03, 2010 at 08:39:22PM -0700, Arve Hjønnevåg wrote:
> On Tue, Aug 3, 2010 at 5:51 PM, <david@lang.hm> wrote:
> > On Tue, 3 Aug 2010, Paul E. McKenney wrote:
> >
> >> On Tue, Aug 03, 2010 at 04:19:25PM -0700, david@lang.hm wrote:
> >>>
> >>> On Tue, 3 Aug 2010, Arve Hj?nnev?g wrote:
> >>>
> >>>> 2010/8/2 <david@lang.hm>:
> >>>>>
> >>>>> so what is the fundamental difference between deciding to go into
> >>>>> low-power
> >>>>> idle modes to wake up back up on a given point in the future and
> >>>>> deciding
> >>>>> that you are going to be idle for so long that you may as well suspend
> >>>>> until
> >>>>> there is user input?
> >>>>>
> >>>>
> >>>> Low power idle modes are supposed to be transparent. Suspend stops the
> >>>> monotonic clock, ignores ready threads and switches over to a separate
> >>>> set of wakeup events/interrupts. We don't suspend until there is user
> >>>> input, we suspend until there is a wakeup event (user-input, incoming
> >>>> network data/phone-calls, alarms etc..).
> >>>
> >>> s/user input/wakeup event/ and my question still stands.
> >>>
> >>> low power modes are not transparent to the user in all cases (if the
> >>> screen backlight dimms/shuts off a user reading something will
> >>> notice, if the system switches to a lower clock speed it can impact
> >>> user response time, etc) The system is making it's best guess as to
> >>> how to best srve the user by sacraficing some capibilities to save
> >>> power now so that the power can be available later.
> >>>
> >>> as I see it, suspending until a wakeup event (button press, incoming
> >>> call, alarm, etc) is just another datapoint along the same path.
> >>>
> >>> If the system could not wake itself up to respond to user input,
> >>> phone call, alarm, etc and needed the power button pressed to wake
> >>> up (or shut down to the point where the battery could be removed and
> >>> reinstalled a long time later), I would see things moving into a
> >>> different category, but as long as the system has the ability to
> >>> wake itself up later (and is still consuming power) I see the
> >>> suspend as being in the same category as the other low-power modes
> >>> (it's just more expensive to go in and out of)
> >>>
> >>>
> >>> why should the suspend be put into a different category from the
> >>> other low-power states?
> >>
> >> OK, I'll bite...
> >
> > thanks, this is not intended to be a trap.
> >
> >> From an Android perspective, the differences are as follows:
> >>
> >> 1. Deep idle states are entered only if there are no runnable tasks.
> >> In contrast, opportunistic suspend can happen even when there
> >> are tasks that are ready, willing, and able to run.
> >
> > Ok, this is a complication to what I'm proposing (and seems a little odd,
> > but I can see how it can work), but not neccessarily a major problem. it
> > depends on exactly how the decision is made to go into low power states
> > and/or suspend. If this is done by an application that is able to look at
> > either all activity or ignore one cgroup of processes at different times in
> > it's calculations than this would work.
> >
> >> 2. There can be a set of input events that do not bring the system
> >> out of suspend, but which would bring the system out of a deep
> >> idle state. For example, I believe that it was stated that one
> >> of the Android-based smartphones ignores touchscreen input while
> >> suspended, but pays attention to it while in deep idle states.
> >
> > I see this as simply being a matter of what devices are still enabled at the
> > different power savings levels. At one level the touchscreen is still
> > powered, while at another level it isn't, and at yet another level you have
> > to hit the power soft-button. This isn't fundamentally different from
> > powering off a USB peripheral that the system decides is idle (and then not
> > seeing input from it until something else wakes the system)
>
> The touchscreen on android devices is powered down long before we
> suspend, so that is not a good example. There is still a significant
> difference between suspend and idle though. In idle all interrupts
> work, in suspend only interrupts that the driver has called
> enable_irq_wake on will work (on platforms that support it).
>
> >> 3. The system comes out of a deep idle state when a timer
> >> expires. In contrast, timers cannot expire while the
> >> system is suspended. (This one is debatable: some people
> >> argue that timers are subject to jitter, and the suspend
> >> case for timers is the same as that for deep idle states,
> >> but with unbounded timer jitter. Others disagree. The
> >> resulting discussions have produced much heat, but little
> >> light. Such is life.)
> >
> > if you have the ability to wake for an alarm, you have the ability to wake
> > for a timer (if from no other method than to set the alarm to when the timer
> > tick would go off)
>
> If you just program the alarm you will wake up see that the monotonic
> clock has not advanced and set the alarm another n seconds into the
> future. Or are proposing that suspend should be changed to keep the
> monotonic clock running? If you are, why? We can enter the same
> hardware states from idle, and modifying suspend to wake up more often
> would increase the average power consumption in suspend, not improve
> it for idle. In other words, if suspend wakes up as often as idle, why
> use suspend?
Hmmm... The bit about the monotonic clock not advancing could help
explain at least some of the heartburn from the scheduler and real-time
folks. ;-)
My guess is that this is not a problem for Android workloads, which
probably do not contain aggressive real-time components. (With the
possible exception of interactions with the cellphone network, which
I believe are handled by a separate core with separate OS.) However,
pulling this into the Linux kernel would require that interactions with
aggressive real-time workloads be handled, one way or another.
I can see a couple possible resolutions:
1. Make OPPORTUNISTIC_SUSPEND depend on !PREEMPT_RT, so that
opportunistic suspend simply doesn't happen on systems that
support aggressive real-time workloads.
2. Allow OPPORTUNISTIC_SUSPEND and PREEMPT_RT, but suppress
opportunistic suspend when there is a user-created real-time
process. One way to handle this would be with a variation
on a tongue-in-cheek suggestion from Peter Zijlstra, namely
to have every real-time process hold a wakelock. Note that
such a wakelock would need to be held even if the real-time
process in question was not runnable, in order to meet
possible real-time deadlines when the real-time process was
awakened.
3. Your proposal here. ;-)
Thoughts?
Thanx, Paul
> >> There may well be others.
> >>
> >> Whether these distinctions are a good thing or a bad thing is one of
> >> the topics of this discussion. But the distinctions themselves are
> >> certainly very real, from what I can see.
> >>
> >> Or am I missing your point?
> >
> > these big distinction that I see as significant seem to be in the decision
> > of when to go into the different states, and the difference between the
> > states themselves seem to be less significant (and either very close to, or
> > within the variation that already exists for power saving modes)
> >
> > If I'm right bout this, then it would seem to simplify the concept and
> > change it from some really foreign android-only thing into a special case
> > variation of existing core concepts.
>
> Suspend is not an android only concept. The android extensions just
> allow us to aggressively use suspend without loosing (or delaying)
> wakeup events. On the hardware that we shipped we can enter the same
> power mode from idle as we do in suspend, but we still use suspend
> primarily because it stops the monotonic clock and all the timers that
> use it. Changing suspend to behave more like an idle mode, which seems
> to be what you are suggesting, would not buy us anything.
>
> >
> > you have many different power saving modes, the daemon (or kernel code) that
> > is determining which mode to go into would need different logic (including,
> > but not limited to the ability to be able to ignore one or more cgroups of
> > processes). different power saving modes have different trade-offs, and some
> > of them power down different peripherals (which is always a platform
> > specific, if not system specific set of trade-offs)
> >
>
> The hardware specific idle hook can (and does) decide to go into any
> power state from idle that does not disrupt any active devices.
>
> > This all depends on the ability for the code that decides to switch power
> > modes (including to trigger suspend) to be able to see things in sufficient
> > detail to be able to do different things depending on the class of programs.
> > I don't know enough about this code to know if this is the case or not, I
> > really wish that someone familiar with the power saving code could either
> > confirm that this is possible, or state that it's not possible (or at least,
> > not without major surgery)
> >
>
>
>
> --
> Arve Hjønnevåg
next prev parent reply other threads:[~2010-08-04 16:27 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 [this message]
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
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=20100804162717.GA24163@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=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 \
--cc=tytso@mit.edu \
/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).