All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Mark Brown <broonie@opensource.wolfsonmicro.com>
Cc: Kevin Hilman <khilman@ti.com>,
	markgross@thegnar.org,
	Linux PM mailing list <linux-pm@lists.linux-foundation.org>,
	linux-omap@vger.kernel.org, Jean Pihet <j-pihet@ti.com>
Subject: Re: [linux-pm] [PATCH 02/11] PM: extend PM QoS with per-device wake-up constraints
Date: Thu, 4 Aug 2011 21:15:30 +0200	[thread overview]
Message-ID: <201108042115.30983.rjw@sisk.pl> (raw)
In-Reply-To: <20110804132426.GB14921@sirena.org.uk>

On Thursday, August 04, 2011, Mark Brown wrote:
> On Wed, Aug 03, 2011 at 12:16:17AM +0200, Rafael J. Wysocki wrote:
> > On Tuesday, August 02, 2011, Kevin Hilman wrote:
> 
> > > I disagree and think that both are quite realistic (mainly because they
> > > exist today, albiet mostly out of tree because no generic QoS framework
> > > exist.  e.g. on OMAP, we have OMAP-specific *kernel* APIs for requesting
> > > per-device wakeup latencies, and drivers and frameworks are using them.)
> > 
> > I'm sure there are frameworks using such things.  I'm also sure there
> > are frameworks that don't.  BTW, the "we have it out of the tree" argument is
> > not very useful, so I'd appreciate it if you didn't use it.
> 
> It's useful to know if people have tried things; it doesn't mean it's
> going to be OK for mainline but it is a data point.
> 
> > > In this case, the video framework (V4L2) might not want any knobs
> > > exposed to userspace because userspace simply doesn't have the knowledge
> > > to set appropriate constraints.  I'm less familiar with audio, but I
> > > believe audio would be similar (sample rate, number of channels, mixing
> > > with other concurrent audio streams, etc. etc. are all known by the
> > > kernel-side code.)
> 
> Yeah, that sort of stuff and also data like wakeup latencies required to
> service interrupts.
> 
> > I still don't understand what's wrong with allowing user space to _add_
> > requirements.  The will only override the drivers' or frameworks' requirements
> > if they are stronger, so the functionality shouldn't be hurt.  They may cause
> > some more energy to be used, but if user space wants that, it's pretty much
> > fine by me.
> 
> On the one hand that's true.  On the other hand that just seems like
> going down a bad road where we have drivers that only work when run with
> a magic userspace that may or may not be published which is just going
> to make people miserable.  I'm not sure there are many people who would
> choose to use more power without wanting some functional change so
> presumably any users would be seeking to work around some kernel problem
> and adding the user interface seems to be saying that this is OK,
> expected and a natural part of power optimization.

First off, we're doing this already (user space can block runtime PM, for
one example, because there are systems where runtime PM doesn't work
although it works on other systems with analogous hardware and pretty
much the same set of drivers).

Second, I think there are valid use cases in which user space _really_ knows
better than the kernel.  I'm opposed to the idea that users shouldn't be given
control of their systems, because they may not know what they're doing.

Thanks,
Rafael

  reply	other threads:[~2011-08-04 19:14 UTC|newest]

Thread overview: 122+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-30 15:11 [PATCH v2 00/11] PM QoS: add a per-device wake-up latency constraint class jean.pihet
2011-06-30 15:11 ` [PATCH 01/11] PM: add a per-device wake-up latency constraints plist jean.pihet
2011-06-30 15:11 ` jean.pihet
2011-07-02 19:39   ` Rafael J. Wysocki
2011-07-20  8:57     ` Jean Pihet
2011-07-20  8:57     ` Jean Pihet
2011-07-02 19:39   ` Rafael J. Wysocki
2011-06-30 15:11 ` [PATCH 02/11] PM: extend PM QoS with per-device wake-up constraints jean.pihet
2011-06-30 15:11 ` jean.pihet
2011-07-02 21:10   ` Rafael J. Wysocki
2011-07-20  9:13     ` Jean Pihet
2011-07-20  9:13     ` Jean Pihet
2011-08-02 17:49     ` Kevin Hilman
2011-08-02 20:19       ` Rafael J. Wysocki
2011-08-02 20:19       ` Rafael J. Wysocki
2011-08-02 21:23         ` Kevin Hilman
2011-08-02 22:16           ` Rafael J. Wysocki
2011-08-04 13:24             ` [linux-pm] " Mark Brown
2011-08-04 19:15               ` Rafael J. Wysocki [this message]
2011-08-05 15:29                 ` mark gross
2011-08-05 15:29                 ` mark gross
2011-08-05 16:11                 ` Mark Brown
2011-08-05 16:11                 ` [linux-pm] " Mark Brown
2011-08-05 19:37                   ` Rafael J. Wysocki
2011-08-05 19:37                   ` [linux-pm] " Rafael J. Wysocki
2011-08-06  3:37                     ` Mark Brown
2011-08-06 19:46                       ` Rafael J. Wysocki
2011-08-07  2:47                         ` Mark Brown
2011-08-07  2:47                         ` [linux-pm] " Mark Brown
2011-08-08 21:31                           ` Rafael J. Wysocki
2011-08-19  3:11                             ` Mark Brown
2011-08-19 20:42                               ` Rafael J. Wysocki
2011-08-19 23:14                                 ` Mark Brown
2011-08-20  2:24                                   ` Alan Stern
2011-08-20  2:24                                   ` [linux-pm] " Alan Stern
2011-08-20  6:25                                     ` Mark Brown
2011-08-20 13:48                                       ` Alan Stern
2011-08-20 13:48                                       ` [linux-pm] " Alan Stern
2011-08-20 15:30                                         ` Mark Brown
2011-08-20 16:34                                           ` Rafael J. Wysocki
2011-08-20 17:04                                             ` Mark Brown
2011-08-20 17:04                                             ` [linux-pm] " Mark Brown
2011-08-20 19:14                                               ` Rafael J. Wysocki
2011-08-21  8:25                                                 ` Mark Brown
2011-08-21  8:25                                                 ` [linux-pm] " Mark Brown
2011-08-21 18:05                                                   ` Rafael J. Wysocki
2011-08-23  9:21                                                     ` Mark Brown
2011-08-23 21:31                                                       ` Rafael J. Wysocki
2011-08-25 10:38                                                         ` Mark Brown
2011-08-25 10:38                                                         ` [linux-pm] " Mark Brown
2011-08-25 14:17                                                           ` Rafael J. Wysocki
2011-08-25 14:41                                                             ` Jean Pihet
2011-08-25 14:41                                                             ` [linux-pm] " Jean Pihet
2011-08-25 14:49                                                               ` Rafael J. Wysocki
2011-08-25 14:49                                                               ` [linux-pm] " Rafael J. Wysocki
2011-08-26 16:40                                                             ` mark gross
2011-08-26 16:40                                                             ` [linux-pm] " mark gross
2011-08-25 14:17                                                           ` Rafael J. Wysocki
2011-08-23 21:31                                                       ` Rafael J. Wysocki
2011-08-23  9:21                                                     ` Mark Brown
2011-08-21 18:05                                                   ` Rafael J. Wysocki
2011-08-20 19:14                                               ` Rafael J. Wysocki
2011-08-20 16:34                                           ` Rafael J. Wysocki
2011-08-20 15:30                                         ` Mark Brown
2011-08-20  6:25                                     ` Mark Brown
2011-08-20  9:35                                   ` Rafael J. Wysocki
2011-08-20  9:35                                   ` [linux-pm] " Rafael J. Wysocki
2011-08-20 10:31                                     ` Mark Brown
2011-08-20 10:31                                     ` [linux-pm] " Mark Brown
2011-08-20 16:51                                       ` Rafael J. Wysocki
2011-08-20 16:51                                       ` [linux-pm] " Rafael J. Wysocki
2011-08-20 17:22                                         ` Mark Brown
2011-08-20 17:22                                         ` [linux-pm] " Mark Brown
2011-08-20 19:18                                           ` Rafael J. Wysocki
2011-08-20 19:18                                           ` Rafael J. Wysocki
2011-08-19 23:14                                 ` Mark Brown
2011-08-19 20:42                               ` Rafael J. Wysocki
2011-08-19  3:11                             ` Mark Brown
2011-08-08 21:31                           ` Rafael J. Wysocki
2011-08-06  3:37                     ` Mark Brown
2011-08-04 19:15               ` Rafael J. Wysocki
2011-08-04 13:24             ` Mark Brown
2011-08-02 21:23         ` Kevin Hilman
2011-08-02 17:49     ` Kevin Hilman
2011-07-02 21:10   ` Rafael J. Wysocki
2011-08-26  2:25   ` MyungJoo Ham
2011-08-26  2:25   ` [linux-pm] " MyungJoo Ham
2011-08-26 16:54     ` mark gross
2011-08-26 20:56       ` Rafael J. Wysocki
2011-08-26 20:56       ` Rafael J. Wysocki
2011-08-26 16:54     ` mark gross
2011-06-30 15:11 ` [PATCH 03/11] PM QoS: support the dynamic devices insertion and removal jean.pihet
2011-07-02 21:14   ` Rafael J. Wysocki
2011-07-02 21:14   ` Rafael J. Wysocki
2011-07-20  9:16     ` Jean Pihet
2011-07-20  9:16     ` Jean Pihet
2011-06-30 15:11 ` jean.pihet
2011-06-30 15:11 ` [PATCH 04/11] OMAP PM: create a PM layer plugin for per-device constraints jean.pihet
2011-06-30 15:11 ` jean.pihet
2011-06-30 15:11 ` [PATCH 05/11] OMAP PM: early init of the pwrdms states jean.pihet
2011-06-30 15:11 ` jean.pihet
2011-06-30 15:11 ` [PATCH 06/11] OMAP2+: powerdomain: control power domains next state jean.pihet
2011-06-30 15:11 ` jean.pihet
2011-06-30 15:11 ` [PATCH 07/11] OMAP3: powerdomain data: add wake-up latency figures jean.pihet
2011-06-30 15:11 ` jean.pihet
2011-06-30 15:11 ` [PATCH 08/11] OMAP4: " jean.pihet
2011-06-30 15:11 ` jean.pihet
2011-06-30 15:11 ` [PATCH 09/11] OMAP2+: omap_hwmod: manage the wake-up latency constraints jean.pihet
2011-06-30 15:11 ` jean.pihet
2011-06-30 15:11 ` [PATCH 10/11] OMAP: PM CONSTRAINTS: implement the devices " jean.pihet
2011-06-30 15:11 ` jean.pihet
2011-06-30 15:11 ` [PATCH 11/11] OMAP2+: cpuidle only influences the MPU state jean.pihet
2011-06-30 15:11 ` jean.pihet
2011-07-02 19:20 ` [PATCH v2 00/11] PM QoS: add a per-device wake-up latency constraint class Rafael J. Wysocki
2011-07-02 19:20 ` Rafael J. Wysocki
2011-07-04  7:16   ` Vishwanath Sripathy
2011-07-04  8:38     ` Rafael J. Wysocki
2011-07-04  8:38     ` Rafael J. Wysocki
2011-07-20  9:26   ` Jean Pihet
2011-07-20 13:22     ` mark gross
2011-07-20 13:22     ` mark gross
2011-07-20  9:26   ` Jean Pihet

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=201108042115.30983.rjw@sisk.pl \
    --to=rjw@sisk.pl \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=j-pihet@ti.com \
    --cc=khilman@ti.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-pm@lists.linux-foundation.org \
    --cc=markgross@thegnar.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.