linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Felipe Balbi <me@felipebalbi.com>
To: James Bottomley <James.Bottomley@suse.de>
Cc: Kevin Hilman <khilman@deeprootsystems.com>,
	Alan Stern <stern@rowland.harvard.edu>,
	linux-omap@vger.kernel.org, "Theodore Ts'o" <tytso@mit.edu>,
	Geoff Smith <geoffx.smith@intel.com>,
	Brian Swetland <swetland@google.com>,
	Kernel development list <linux-kernel@vger.kernel.org>,
	Oleg Nesterov <oleg@redhat.com>,
	Mark Brown <broonie@opensource.wolfsonmicro.com>,
	Tejun Heo <tj@kernel.org>,
	Linux-pm mailing list <linux-pm@lists.linux-foundation.org>,
	Arjan van de Ven <arjan@infradead.org>,
	Liam Girdwood <lrg@slimlogic.co.uk>,
	Matthew Garrett <mjg@redhat.com>
Subject: Re: [linux-pm] [PATCH 0/8] Suspend block api (version 6)
Date: Mon, 17 May 2010 20:47:31 +0300	[thread overview]
Message-ID: <20100517174647.GA11512@gandalf> (raw)
In-Reply-To: <1274115885.4418.59.camel@mulgrave.site>

On Mon, May 17, 2010 at 01:04:45PM -0400, James Bottomley wrote:
> > For userspace, apps that have polling behavior or are ill-behaved must
> > be found and fixed.  Thanks to tools like powertop, this is a farily
> > easy task.
> 
> That's a bit glib ... powertop can detect power consumption stats on a
> running system ... if you have a polling app preventing your system from
> suspending, powertop isn't necessarily going to find it ... especially
> if the polling interval is of the order of powertop's.  Powertop can
> find the bad tens of wakeups per second, but it only takes one wakup
> every few seconds or so to drain the battery significantly when
> operating on suspend from idle.

you can always increase powertop's interval through command line and
once you went down to 1 wakeup every two seconds, you increase
powertop's interval and try to cut down 10 more ill-behaved apps. And
you keep going until you have e.g. 1 wakeup per minute or whatever your
target is.

> > But really, I don't consider the "ill-behaved app" problem to be a
> > real-world problem.  Both in maemo/meego and Android, if someone
> > writes an app that kills battery life, it will get reported as a bug,
> > or get bad ratings etc.  On these kinds of devices, there is a *stong*
> > developer incentive to not write battery sucking apps.
> 
> I'm not sure this is real world, either.  Developers can fire up
> powertop from the command line when their phone isn't idling for as long
> as it should.  But a phone is a consumer device: the average smart phone
> user just wants to browse the web, get email, go to facebook and play
> with some cool apps.  If one of those cool apps is rogue, they're not
> really going to know which one or how to find it (and firing up powertop
> from the command line isn't something which will occur to them as a
> matter of routine).

Agree with you here.

> One of the nice things that suspend blockers actually does is to give
> the kernel a clear name for the process blocking suspend (and thus
> consuming power).  This allows a nice way to assign power budget to the
> application and present who's using what in a nice visible form, which
> does facilitate the reporting of bad apps, even for the non-developer
> user.

if that's the only thing we want suspend_blockers for, there are other
simpler ways to do it. Just add a kernel debugging option for anyone
doing poll() or keeping a device open() or whatever and you have the
name the of the processes consuming power and preventing system from
going into sleep.

IMO, suspend_blocker is trying to fix application problems in kernel
space by unconditionaly (well sort of) freezing userspace if there are
no suspen_blockers held. So even if application is doing
poll(pfds, ARRAY_SIZE(pfds), 2); that won't be noticed because as long as
the suspend_blocker is released, that poll() will be frozen, no ?

IMO the real fix would be on that particular poll(), changing the
timeout e.g. based on cpufreq notifications or even relying completely
on IRQs with poll(pdfs, ARRAY_SIZE(pfds), -1); Of course, this is only a
crude example trying to show that the real issue lies on the application
rather than on kernel.

-- 
balbi

  reply	other threads:[~2010-05-17 17:47 UTC|newest]

Thread overview: 323+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-30 22:36 [PATCH 0/8] Suspend block api (version 6) Arve Hjønnevåg
2010-04-30 22:36 ` [PATCH 1/8] PM: Add suspend block api Arve Hjønnevåg
2010-04-30 22:36   ` [PATCH 2/8] PM: suspend_block: Add driver to access suspend blockers from user-space Arve Hjønnevåg
2010-04-30 22:36     ` [PATCH 3/8] PM: suspend_block: Abort task freezing if a suspend_blocker is active Arve Hjønnevåg
2010-04-30 22:36       ` [PATCH 4/8] PM: suspend_block: Add debugfs file Arve Hjønnevåg
2010-04-30 22:36         ` [PATCH 5/8] PM: suspend_block: Add suspend_blocker stats Arve Hjønnevåg
2010-04-30 22:36           ` [PATCH 6/8] PM: Add suspend blocking work Arve Hjønnevåg
2010-04-30 22:37             ` [PATCH 7/8] Input: Block suspend while event queue is not empty Arve Hjønnevåg
2010-04-30 22:37               ` [PATCH 8/8] power_supply: Block suspend while power supply change notifications are pending Arve Hjønnevåg
2010-05-01  6:14             ` [PATCH 6/8] PM: Add suspend blocking work Tejun Heo
2010-05-02  7:05             ` Pavel Machek
2010-05-04 11:16         ` [PATCH 4/8] PM: suspend_block: Add debugfs file Andi Kleen
2010-05-04 21:06           ` Arve Hjønnevåg
2010-05-02  6:57       ` [PATCH 3/8] PM: suspend_block: Abort task freezing if a suspend_blocker is active Pavel Machek
2010-05-02  7:04     ` [PATCH 2/8] PM: suspend_block: Add driver to access suspend blockers from user-space Pavel Machek
2010-05-02 21:23     ` Rafael J. Wysocki
2010-05-02 21:56       ` Alan Stern
2010-05-03 15:03         ` Rafael J. Wysocki
2010-05-03 21:26           ` Arve Hjønnevåg
2010-05-03 21:49             ` Rafael J. Wysocki
2010-05-03 22:01               ` Arve Hjønnevåg
2010-05-04 20:02                 ` Rafael J. Wysocki
2010-05-04  4:16           ` Pavel Machek
2010-05-02  6:56   ` [PATCH 1/8] PM: Add suspend block api Pavel Machek
2010-05-02 20:10     ` Rafael J. Wysocki
2010-05-02 20:52       ` Pavel Machek
2010-05-02 21:29         ` Rafael J. Wysocki
2010-05-03 19:01           ` Pavel Machek
2010-05-03 21:38             ` Rafael J. Wysocki
2010-05-03 22:11               ` Alan Stern
2010-05-03 22:24                 ` Arve Hjønnevåg
2010-05-02  7:01   ` Pavel Machek
2010-05-04  5:12   ` [linux-pm] " mark gross
2010-05-04 13:59     ` Alan Stern
2010-05-04 16:03       ` mark gross
2010-05-04 17:16         ` Alan Stern
2010-05-05  1:50           ` mark gross
2010-05-05 13:31             ` Matthew Garrett
2010-05-05 20:09               ` mark gross
2010-05-05 20:21                 ` Matthew Garrett
2010-05-05 15:44             ` Alan Stern
2010-05-05 20:28               ` mark gross
2010-05-05 21:12                 ` Alan Stern
2010-05-05 21:37                   ` Brian Swetland
2010-05-05 23:47                     ` Tony Lindgren
2010-05-05 23:56                       ` Brian Swetland
2010-05-06  0:05                         ` Tony Lindgren
2010-05-06  4:16                           ` Arve Hjønnevåg
2010-05-06 17:04                             ` Tony Lindgren
2010-05-07  0:10                               ` Arve Hjønnevåg
2010-05-07 15:54                                 ` Tony Lindgren
2010-05-28  6:43                                 ` Pavel Machek
2010-05-28  7:01                                   ` Arve Hjønnevåg
2010-05-06 13:40                       ` Matthew Garrett
2010-05-06 17:01                         ` Tony Lindgren
2010-05-06 17:09                           ` Matthew Garrett
2010-05-06 17:14                             ` Tony Lindgren
2010-05-06 17:22                               ` Matthew Garrett
2010-05-06 17:38                                 ` Tony Lindgren
2010-05-06 17:43                                   ` Matthew Garrett
2010-05-06 18:33                                     ` Tony Lindgren
2010-05-06 18:44                                       ` Matthew Garrett
2010-05-07  2:05                                         ` Tony Lindgren
2010-05-07 17:12                                           ` Matthew Garrett
2010-05-07 17:35                                             ` Tony Lindgren
2010-05-07 17:50                                               ` Matthew Garrett
2010-05-07 18:01                                                 ` Tony Lindgren
2010-05-07 18:28                                                   ` Matthew Garrett
2010-05-07 18:43                                                     ` Tony Lindgren
2010-05-07 18:46                                                       ` Matthew Garrett
2010-05-07 19:06                                                         ` Daniel Walker
2010-05-07 19:28                                                           ` Tony Lindgren
2010-05-07 19:33                                                             ` Matthew Garrett
2010-05-07 19:55                                                               ` Tony Lindgren
2010-05-07 20:28                                                                 ` Matthew Garrett
2010-05-07 20:53                                                                   ` Tony Lindgren
2010-05-07 21:03                                                                     ` Matthew Garrett
2010-05-07 21:25                                                                       ` Tony Lindgren
2010-05-07 21:32                                                                         ` Arve Hjønnevåg
2010-05-07 21:39                                                                         ` Matthew Garrett
2010-05-07 21:42                                                                           ` Tony Lindgren
2010-05-07 21:48                                                                             ` Matthew Garrett
2010-05-07 22:00                                                                               ` Tony Lindgren
2010-05-07 22:28                                                                                 ` Matthew Garrett
2010-05-07 21:30                                                                       ` Daniel Walker
2010-05-07 21:35                                                                         ` Arve Hjønnevåg
2010-05-07 21:43                                                                           ` Daniel Walker
2010-05-07 21:38                                                                         ` Matthew Garrett
2010-05-06 18:47                                       ` Alan Stern
2010-05-07  2:20                                         ` Tony Lindgren
2010-05-28 13:29                                   ` Pavel Machek
2010-05-28 13:42                                     ` Brian Swetland
2010-05-06 17:35                               ` Daniel Walker
2010-05-06 18:36                                 ` Tony Lindgren
2010-05-06 19:11                                   ` Daniel Walker
2010-05-07  2:00                                     ` Tony Lindgren
2010-05-07 17:20                                       ` Daniel Walker
2010-05-07 17:36                                         ` Matthew Garrett
2010-05-07 17:40                                           ` Daniel Walker
2010-05-07 17:51                                             ` Matthew Garrett
2010-05-07 18:00                                               ` Daniel Walker
2010-05-07 18:17                                                 ` Tony Lindgren
2010-05-07 17:50                                         ` Tony Lindgren
2010-05-07  3:45                               ` mgross
2010-05-07  3:45                             ` mgross
2010-05-07  4:10                               ` Arve Hjønnevåg
2010-05-04 20:40     ` Arve Hjønnevåg
2010-05-03 16:40 ` [PATCH 0/8] Suspend block api (version 6) Kevin Hilman
2010-05-03 17:12   ` Alan Stern
2010-05-03 18:17     ` Kevin Hilman
2010-05-03 18:07   ` Mark Brown
2010-05-03 21:18     ` Rafael J. Wysocki
2010-05-03 23:37       ` Kevin Hilman
2010-05-04  0:09         ` Arve Hjønnevåg
2010-05-04  0:43           ` Brian Swetland
2010-05-04 13:59             ` Mark Brown
2010-05-04 18:06               ` Kevin Hilman
2010-05-04 19:06                 ` Mark Brown
2010-05-04 20:37                   ` Rafael J. Wysocki
2010-05-04 23:14                     ` Kevin Hilman
2010-05-04 23:42                       ` Rafael J. Wysocki
2010-05-04 20:23                 ` Rafael J. Wysocki
2010-05-04 20:44                   ` Rafael J. Wysocki
2010-05-04 23:56                   ` Mark Brown
2010-05-05  0:22                     ` Rafael J. Wysocki
2010-05-05  1:11                       ` Brian Swetland
2010-05-05 11:06                       ` Mark Brown
2010-05-05 12:00                         ` Brian Swetland
2010-05-05 13:56                           ` Mark Brown
2010-05-05 17:33                             ` Matthew Garrett
2010-05-05 18:36                               ` Alan Stern
2010-05-05 18:52                                 ` Matthew Garrett
2010-05-05 19:13                                   ` Alan Stern
2010-05-05 19:22                                     ` Matthew Garrett
2010-05-05 19:52                                       ` Mark Brown
2010-05-05 19:55                                         ` tytso
2010-05-05 20:26                                           ` Mark Brown
2010-05-05 20:44                                             ` Rafael J. Wysocki
2010-05-05 21:57                                               ` Mark Brown
2010-05-05 22:03                                                 ` Brian Swetland
2010-05-05 22:05                                                 ` Rafael J. Wysocki
2010-05-05 23:09                                                   ` Mark Brown
2010-05-05 23:33                                                     ` Rafael J. Wysocki
2010-05-06  0:21                                                       ` Mark Brown
2010-05-06  0:51                                                         ` Rafael J. Wysocki
2010-05-05 20:02                                         ` Matthew Garrett
2010-05-05 20:09                                           ` Mark Brown
2010-05-05 19:39                                     ` Mark Brown
2010-05-05 20:56                                     ` Brian Swetland
2010-05-05 23:40                                       ` Mark Brown
2010-05-06  4:25                                         ` Arve Hjønnevåg
2010-05-07 10:04                                           ` Mark Brown
2010-05-07 10:57                                             ` Arve Hjønnevåg
2010-05-07 11:21                                               ` Mark Brown
2010-05-07 11:29                                                 ` Theodore Tso
2010-05-07 12:25                                                   ` Mark Brown
2010-05-07 12:37                                                     ` Brian Swetland
2010-05-07 13:30                                                       ` Mark Brown
2010-05-11 18:47                                                         ` Mark Brown
2010-05-07 11:41                                                 ` Arve Hjønnevåg
2010-05-07 14:00                                                   ` Mark Brown
2010-05-05 19:07                                 ` Mark Brown
2010-05-05 19:20                                   ` Alan Stern
2010-05-05 19:28                                     ` Matthew Garrett
2010-05-05 20:04                                       ` Alan Stern
2010-05-05 20:15                                         ` Mark Brown
2010-05-05 20:28                                         ` Rafael J. Wysocki
2010-05-05 23:03                                         ` Kevin Hilman
2010-05-05 23:16                                           ` Rafael J. Wysocki
2010-05-05 23:42                                           ` Brian Swetland
2010-05-06 14:08                                             ` Alan Stern
2010-05-06 19:26                                               ` Rafael J. Wysocki
2010-05-05 18:39                               ` Mark Brown
2010-05-05 15:35                     ` Alan Stern
2010-05-05 16:27                       ` Mark Brown
2010-05-04 18:04           ` Kevin Hilman
2010-05-04  0:43         ` Matthew Garrett
2010-05-04 13:51           ` Alan Stern
2010-05-04 14:53             ` Mark Brown
2010-05-04 15:13             ` Kevin Hilman
2010-05-04 15:27             ` Matthew Garrett
2010-05-06  1:40               ` Magnus Damm
2010-05-04 15:13           ` Kevin Hilman
2010-05-04 15:28             ` Matthew Garrett
2010-05-03 21:50   ` Matthew Garrett
     [not found]     ` <alpine.DEB.2.00.1005141408260.3348@utopia.booyaka.com>
     [not found]       ` <20100514203202.GA12409@srcf.ucam.org>
     [not found]         ` <87aas2azc5.fsf@deeprootsystems.com>
     [not found]           ` <20100514231510.GG16989@thunk.org>
     [not found]             ` <87r5laa4oc.fsf@deeprootsystems.com>
     [not found]               ` <AANLkTilL90pYVlquvMDAEPHj_AraEi9Qzk-0tTjw9Bkx@mail.gmail.com>
2010-05-17 20:07                 ` [linux-pm] " Mike Chan
2010-05-17 20:17                   ` Vitaly Wool
2010-05-17 21:04                     ` Mike Chan
2010-05-17 22:55                   ` Kevin Hilman
2010-05-17 23:04                     ` Brian Swetland
2010-05-24 18:57     ` Pavel Machek
2010-05-24 19:08       ` Matthew Garrett
2010-05-25  1:16       ` Arve Hjønnevåg
2010-05-26 17:32         ` Pavel Machek
2010-05-05 20:35   ` mark gross
2010-05-10 18:06   ` Kevin Hilman
2010-05-10 20:25     ` Rafael J. Wysocki
2010-05-11 16:12       ` Tony Lindgren
2010-05-11 16:14         ` Matthew Garrett
2010-05-11 16:36           ` Tony Lindgren
2010-05-11 16:45             ` Matthew Garrett
2010-05-11 16:58               ` Tony Lindgren
2010-05-11 17:03                 ` Matthew Garrett
2010-05-11 17:24                   ` Tony Lindgren
2010-05-11 17:30                     ` Matthew Garrett
2010-05-11 17:48                       ` Tony Lindgren
2010-05-11 18:01                         ` Matthew Garrett
2010-05-11 18:19                       ` Rafael J. Wysocki
2010-05-12  1:11     ` Arve Hjønnevåg
2010-05-12 11:22       ` Mark Brown
2010-05-13  3:35 ` [linux-pm] " Paul Walmsley
2010-05-13 12:17   ` Matthew Garrett
2010-05-13 17:33     ` Daniel Walker
2010-05-13 18:17       ` Brian Swetland
2010-05-13 18:25         ` Daniel Walker
2010-05-13 18:36           ` Matthew Garrett
2010-05-13 18:59             ` Daniel Walker
2010-05-13 19:11               ` Matthew Garrett
2010-05-13 19:36                 ` Daniel Walker
2010-05-13 19:48                   ` Matthew Garrett
2010-05-13 21:11                     ` Rafael J. Wysocki
2010-05-13 21:16                       ` Daniel Walker
2010-05-13 21:27                         ` Rafael J. Wysocki
2010-05-13 21:33                           ` Daniel Walker
2010-05-13 21:36                             ` Tony Lindgren
2010-05-13 21:54                               ` Rafael J. Wysocki
2010-05-13 21:46                             ` Greg KH
2010-05-13 22:27                               ` Mark Brown
2010-05-13 22:45                                 ` Greg KH
2010-05-14  0:03                                   ` Mark Brown
2010-05-13 22:46                                 ` Rafael J. Wysocki
2010-05-13 23:36                                   ` Mark Brown
2010-05-13 23:48                                     ` Brian Swetland
2010-05-14  0:29                                       ` Mark Brown
2010-05-13 22:33                               ` Woodruff, Richard
2010-05-13 22:46                                 ` Greg KH
2010-05-13 23:06                                   ` Arve Hjønnevåg
2010-05-13 23:28                                   ` Brian Swetland
2010-05-14 16:47                               ` Daniel Walker
2010-05-13 14:16   ` Alan Stern
2010-05-13 19:17     ` Tony Lindgren
2010-05-13 19:25       ` Matthew Garrett
2010-05-13 19:42         ` Tony Lindgren
2010-05-13 19:53           ` Matthew Garrett
2010-05-13 20:00             ` Tony Lindgren
2010-05-13 20:08               ` Matthew Garrett
2010-05-13 20:23                 ` Tony Lindgren
2010-05-13 20:34                   ` Matthew Garrett
2010-05-13 21:10                     ` Tony Lindgren
2010-05-13 21:21                       ` Matthew Garrett
2010-05-13 21:34                         ` Tony Lindgren
2010-05-15 19:54                           ` Matthew Garrett
2010-05-13 21:21                     ` Rafael J. Wysocki
2010-05-13 21:25                       ` Tony Lindgren
2010-05-13 21:56                         ` Rafael J. Wysocki
2010-05-14 20:41                           ` Kevin Hilman
2010-05-14 21:25                             ` Rafael J. Wysocki
2010-05-14 21:40                             ` Kevin Hilman
2010-05-14 21:50                               ` Rafael J. Wysocki
2010-05-14 22:45                                 ` Kevin Hilman
2010-05-14 22:59                                   ` Brian Swetland
2010-05-15  2:58                                     ` Alan Stern
2010-05-15  3:40                                       ` Brian Swetland
2010-05-15 21:19                                         ` Alan Stern
2010-05-17 15:40                                           ` Kevin Hilman
2010-05-17 17:04                                             ` James Bottomley
2010-05-17 17:47                                               ` Felipe Balbi [this message]
2010-05-17 17:58                                                 ` Matthew Garrett
2010-05-17 18:16                                                   ` Felipe Balbi
2010-05-17 17:59                                                 ` James Bottomley
2010-05-17 18:12                                                   ` Felipe Balbi
2010-05-17 18:26                                                     ` Brian Swetland
2010-05-17 18:39                                                       ` Felipe Balbi
2010-05-17 18:45                                                         ` Brian Swetland
2010-05-17 20:22                                                           ` Rafael J. Wysocki
2010-05-17 18:45                                                         ` Mark Brown
2010-05-17 18:47                                                         ` Mike Chan
2010-05-17 19:24                                                     ` James Bottomley
2010-05-17 19:38                                                       ` Felipe Balbi
2010-05-17 19:39                                                         ` Felipe Balbi
2010-05-17 19:49                                                           ` James Bottomley
2010-05-18  6:40                                                             ` Felipe Balbi
2010-05-18 13:59                                                               ` James Bottomley
2010-05-19  6:59                                                                 ` Felipe Balbi
2010-05-19 20:42                                                                   ` Rafael J. Wysocki
2010-05-20  4:49                                                                     ` Felipe Balbi
2010-05-20 11:27                                                                       ` Vladimir Pantelic
2010-05-20 11:29                                                                         ` Felipe Balbi
2010-05-20 17:40                                                                         ` David Brownell
2010-05-20 18:50                                                                           ` Felipe Balbi
2010-05-20 23:08                                                                             ` David Brownell
2010-05-20  5:15                                                                   ` Florian Mickler
2010-05-20  8:57                                                                     ` Felipe Balbi
2010-05-20  8:57                                                                       ` Felipe Balbi
2010-05-20 10:05                                                                       ` Florian Mickler
2010-05-20 10:15                                                                         ` Felipe Balbi
2010-05-17 18:54                                                   ` Kevin Hilman
2010-05-17 17:57                                               ` Daniel Walker
2010-05-15 20:14                                   ` Rafael J. Wysocki
2010-05-16 19:44                                     ` Mark Brown
2010-05-13 22:24                         ` tytso
2010-05-13 20:36                   ` Daniel Walker
2010-05-14 16:06                 ` Kevin Hilman
2010-05-24 21:25                 ` Pavel Machek
2010-05-13 21:41           ` Alan Stern
2010-05-13 21:54             ` Tony Lindgren
2010-05-13 22:07               ` Rafael J. Wysocki
2010-05-13 22:26           ` Arve Hjønnevåg
2010-05-13 21:14       ` Rafael J. Wysocki
2010-05-13 21:31         ` Tony Lindgren
2010-05-13 21:57           ` Rafael J. Wysocki
2010-05-13 21:37       ` Alan Stern
2010-05-13 21:47         ` Tony Lindgren
2010-05-13 22:01           ` Alan Stern
2010-05-13 22:08             ` Tony Lindgren
2010-05-13 22:28               ` Rafael J. Wysocki
2010-05-15  2:35                 ` Alan Stern
2010-05-15  4:04                   ` Arve Hjønnevåg
2010-05-13 22:04           ` Rafael J. Wysocki
2010-05-14  3:25           ` Magnus Damm
2010-05-14 16:18             ` Kevin Hilman
2010-05-15  2:47             ` Alan Stern
2010-05-24 21:24     ` Pavel Machek

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=20100517174647.GA11512@gandalf \
    --to=me@felipebalbi.com \
    --cc=James.Bottomley@suse.de \
    --cc=arjan@infradead.org \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=geoffx.smith@intel.com \
    --cc=khilman@deeprootsystems.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-pm@lists.linux-foundation.org \
    --cc=lrg@slimlogic.co.uk \
    --cc=mjg@redhat.com \
    --cc=oleg@redhat.com \
    --cc=stern@rowland.harvard.edu \
    --cc=swetland@google.com \
    --cc=tj@kernel.org \
    --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).