From: Ingo Molnar <mingo@elte.hu>
To: Matthew Garrett <mjg59@srcf.ucam.org>
Cc: "Rafael J. Wysocki" <rjw@sisk.pl>,
Alan Stern <stern@rowland.harvard.edu>,
pm list <linux-pm@lists.linux-foundation.org>,
ACPI Devel Maling List <linux-acpi@vger.kernel.org>,
LKML <linux-kernel@vger.kernel.org>,
Magnus Damm <magnus.damm@gmail.com>
Subject: Re: Run-time PM idea (was: Re: [linux-pm] [RFC][PATCH 0/2] PM: Rearrange core suspend code)
Date: Mon, 8 Jun 2009 15:46:47 +0200 [thread overview]
Message-ID: <20090608134647.GA14234@elte.hu> (raw)
In-Reply-To: <20090608133215.GA15482@srcf.ucam.org>
* Matthew Garrett <mjg59@srcf.ucam.org> wrote:
> On Mon, Jun 08, 2009 at 03:22:35PM +0200, Ingo Molnar wrote:
> >
> > * Matthew Garrett <mjg59@srcf.ucam.org> wrote:
> > > The difficulty is in determining when it's viable to autosuspend a
> > > given device. There's a limit to how much we can determine purely
> > > from kernel state (for instance, we could suspend ahci when
> > > there's no pending disk access, but we'd lose hotplug
> > > notifications) so there's going to have to be some level of
> > > userspace policy determination. Having the infrastructure in the
> > > kernel is an important part of this, but there'll be some distance
> > > to go after that.
> >
> > What will the 'user space policy' bit do what the kernel cannot?
>
> How does the kernel know whether the user cares about SATA hotplug
> or not?
The typical user probably doesnt know what 'SATA' means, and
probably has very vague concepts about 'hotplug' as well.
The kernel default should be: 'yes, if the kernel feature is enabled
and if the hardware can support it' (it's not on a blacklist of some
sort, etc., etc.).
> > If you mean the user has to configure something manually - that
> > wont really happen in practice. We are happy if they know where
> > to put those USB sticks in ;-)
>
> It'll be up to the distributions to provide sane defaults and let
> them be reconfigured as necessary, depending on the information we
> have from the user and maybe platform-specific knowledge. But this
> is a difficult problem - we need to be smart about all the
> potential sources of information in order to pick an appropriate
> policy, and the kernel's not the right layer to do some of this
> information collection.
What sources of information exactly? Again, the user wont enter
anything, in 95% of the cases - in the remaining 3% of cases what is
entered is wrong and only in another 2% of cases is it correct ;-)
Sane kernel defaults are important and the kernel sure knows what
kind of hardware it runs on. This 'let the user decide policy' for
something as fundamental (and also as arcane) as power saving mode
is really a disease that has caused a lot of unnecessary pain in
Linux in the past 15 years.
Sure, there might be tradeoffs when a piece of hardware cannot be
turned off sanely: obviously the monitor might not know it
(currently) whether someone is watching it, and
wake-on-packet-for-me is not commonly implemented in wireless and
wired networking cards so turning off an active networking card
might not be possible without the user asking allowing that
imperfect mode of power saving.
But there are plenty of cases where turning off hardware is fine,
and the broken special cases will go away as technology advances,
and we should not design based on broken concepts.
( Providing a way to _override_ those defaults is of course natural,
via /sysfs, should the user express an interest in tweaking it, or
should the kernel get it so wrong that a distro wants to work it
around. But your argument seems to be "push configuration and
handling into user-space" which is really backwards. )
Ingo
next prev parent reply other threads:[~2009-06-08 13:46 UTC|newest]
Thread overview: 199+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-06 22:54 [RFC][PATCH 0/2] PM: Rearrange core suspend code Rafael J. Wysocki
2009-06-06 22:55 ` [RFC][PATCH 1/2] PM: Separate suspend to RAM functionality from core Rafael J. Wysocki
2009-06-06 22:55 ` Rafael J. Wysocki
2009-06-08 6:36 ` Pavel Machek
2009-06-08 6:36 ` Pavel Machek
2009-06-06 22:56 ` [RFC][PATCH 2/2] PM/Hibernate: Rename disk.c to hibernate.c Rafael J. Wysocki
2009-06-06 22:56 ` Rafael J. Wysocki
2009-06-08 6:37 ` Pavel Machek
2009-06-08 6:37 ` Pavel Machek
2009-06-07 20:51 ` [RFC][PATCH 0/2] PM: Rearrange core suspend code Alan Stern
2009-06-07 20:51 ` [linux-pm] " Alan Stern
2009-06-07 21:46 ` Run-time PM idea (was: Re: [RFC][PATCH 0/2] PM: Rearrange core suspend code) Rafael J. Wysocki
2009-06-07 21:46 ` Run-time PM idea (was: Re: [linux-pm] " Rafael J. Wysocki
2009-06-07 22:02 ` Run-time PM idea (was: " Oliver Neukum
2009-06-07 22:02 ` Run-time PM idea (was: Re: [linux-pm] " Oliver Neukum
2009-06-07 22:02 ` Oliver Neukum
2009-06-07 22:05 ` Run-time PM idea (was: " Oliver Neukum
2009-06-07 22:05 ` [linux-pm] " Oliver Neukum
2009-06-08 11:29 ` Rafael J. Wysocki
2009-06-08 11:29 ` [linux-pm] " Rafael J. Wysocki
2009-06-08 12:04 ` Oliver Neukum
2009-06-08 18:34 ` Rafael J. Wysocki
2009-06-09 7:25 ` Oliver Neukum
2009-06-09 7:25 ` [linux-pm] " Oliver Neukum
2009-06-09 14:33 ` Alan Stern
2009-06-09 14:33 ` [linux-pm] " Alan Stern
2009-06-09 14:33 ` Alan Stern
2009-06-09 14:48 ` Oliver Neukum
2009-06-09 14:48 ` Oliver Neukum
2009-06-09 14:48 ` Oliver Neukum
2009-06-09 22:44 ` [linux-pm] " Rafael J. Wysocki
2009-06-09 22:44 ` Rafael J. Wysocki
2009-06-08 18:34 ` Rafael J. Wysocki
2009-06-08 12:04 ` Oliver Neukum
2009-06-08 20:35 ` Alan Stern
2009-06-08 20:35 ` [linux-pm] " Alan Stern
2009-06-08 20:35 ` Alan Stern
2009-06-08 21:31 ` Rafael J. Wysocki
2009-06-09 2:49 ` Alan Stern
2009-06-09 2:49 ` Alan Stern
2009-06-09 22:57 ` Rafael J. Wysocki
2009-06-10 8:29 ` [patch update] " Rafael J. Wysocki
2009-06-10 8:29 ` [patch update] Re: [linux-pm] " Rafael J. Wysocki
2009-06-10 14:20 ` [patch update] " Oliver Neukum
2009-06-10 14:20 ` [patch update] Re: [linux-pm] " Oliver Neukum
2009-06-10 19:27 ` Rafael J. Wysocki
2009-06-10 21:38 ` Oliver Neukum
2009-06-10 21:38 ` Oliver Neukum
2009-06-10 22:01 ` [patch update] " Rafael J. Wysocki
2009-06-10 22:01 ` [patch update] Re: [linux-pm] " Rafael J. Wysocki
2009-06-10 23:07 ` Oliver Neukum
2009-06-10 23:07 ` Oliver Neukum
2009-06-10 23:42 ` [patch update] " Alan Stern
2009-06-10 23:42 ` [patch update] Re: [linux-pm] " Alan Stern
2009-06-10 23:42 ` Alan Stern
2009-06-11 13:48 ` Rafael J. Wysocki
2009-06-11 13:57 ` [patch update] " Oliver Neukum
2009-06-11 13:57 ` [patch update] Re: [linux-pm] " Oliver Neukum
2009-06-11 14:16 ` [patch update] " Alan Stern
2009-06-11 14:16 ` [patch update] Re: [linux-pm] " Alan Stern
2009-06-11 14:16 ` Alan Stern
2009-06-11 19:38 ` [patch update] " Rafael J. Wysocki
2009-06-11 19:38 ` [patch update] Re: [linux-pm] " Rafael J. Wysocki
2009-06-11 13:48 ` [patch update] " Rafael J. Wysocki
2009-06-11 13:46 ` Rafael J. Wysocki
2009-06-11 13:46 ` [patch update] Re: [linux-pm] " Rafael J. Wysocki
2009-06-10 23:07 ` [patch update] " Oliver Neukum
2009-06-10 21:38 ` Oliver Neukum
2009-06-10 19:27 ` Rafael J. Wysocki
2009-06-10 21:14 ` Alan Stern
2009-06-10 21:14 ` [patch update] Re: [linux-pm] " Alan Stern
2009-06-10 21:31 ` [patch update] " Rafael J. Wysocki
2009-06-10 21:31 ` [patch update] Re: [linux-pm] " Rafael J. Wysocki
2009-06-10 23:15 ` [patch update] " Oliver Neukum
2009-06-10 23:15 ` [patch update] Re: [linux-pm] " Oliver Neukum
2009-06-10 23:15 ` Oliver Neukum
2009-06-11 5:27 ` [patch update] " Magnus Damm
2009-06-11 5:27 ` [patch update] Re: [linux-pm] " Magnus Damm
2009-06-11 5:27 ` Magnus Damm
2009-06-10 23:42 ` Alan Stern
2009-06-11 14:17 ` [patch update] " Rafael J. Wysocki
2009-06-11 14:17 ` [patch update] Re: [linux-pm] " Rafael J. Wysocki
2009-06-11 14:52 ` [patch update] " Alan Stern
2009-06-11 14:52 ` [patch update] Re: [linux-pm] " Alan Stern
2009-06-11 15:06 ` Oliver Neukum
2009-06-11 15:06 ` Oliver Neukum
2009-06-11 15:22 ` Alan Stern
2009-06-11 15:22 ` Alan Stern
2009-06-11 16:05 ` Oliver Neukum
2009-06-11 16:05 ` Oliver Neukum
2009-06-11 18:36 ` [patch update] " Alan Stern
2009-06-11 18:36 ` [patch update] Re: [linux-pm] " Alan Stern
2009-06-11 18:36 ` Alan Stern
2009-06-11 21:05 ` [patch update] " Oliver Neukum
2009-06-11 21:05 ` [patch update] Re: [linux-pm] " Oliver Neukum
2009-06-11 21:05 ` Oliver Neukum
2009-06-12 2:16 ` Alan Stern
2009-06-12 2:16 ` Alan Stern
2009-06-12 8:15 ` Oliver Neukum
2009-06-12 14:32 ` [patch update] " Alan Stern
2009-06-12 14:32 ` [patch update] Re: [linux-pm] " Alan Stern
2009-06-12 14:32 ` Alan Stern
2009-06-12 19:09 ` [patch update] " Rafael J. Wysocki
2009-06-12 19:09 ` [patch update] Re: [linux-pm] " Rafael J. Wysocki
2009-06-12 19:48 ` Alan Stern
2009-06-12 19:56 ` [patch update] " Rafael J. Wysocki
2009-06-12 19:56 ` [patch update] Re: [linux-pm] " Rafael J. Wysocki
2009-06-12 21:23 ` Alan Stern
2009-06-12 23:06 ` [patch update] " Rafael J. Wysocki
2009-06-12 23:06 ` [patch update] Re: [linux-pm] " Rafael J. Wysocki
2009-06-13 18:08 ` [patch update] " Alan Stern
2009-06-13 18:08 ` [patch update] Re: [linux-pm] " Alan Stern
2009-06-13 22:04 ` [patch update] " Rafael J. Wysocki
2009-06-13 22:04 ` [patch update] Re: [linux-pm] " Rafael J. Wysocki
2009-06-12 21:23 ` [patch update] " Alan Stern
2009-06-12 19:48 ` Alan Stern
2009-06-12 8:15 ` Oliver Neukum
2009-06-12 2:16 ` Alan Stern
2009-06-11 16:05 ` Oliver Neukum
2009-06-11 15:22 ` Alan Stern
2009-06-11 15:06 ` Oliver Neukum
2009-06-11 19:43 ` Rafael J. Wysocki
2009-06-11 19:43 ` [patch update] Re: [linux-pm] " Rafael J. Wysocki
2009-06-12 14:25 ` [patch update] " Alan Stern
2009-06-12 14:25 ` [patch update] Re: [linux-pm] " Alan Stern
2009-06-10 23:42 ` [patch update] " Alan Stern
2009-06-11 5:18 ` [patch update] Re: [linux-pm] " Magnus Damm
2009-06-11 5:18 ` Magnus Damm
2009-06-11 9:08 ` Oliver Neukum
2009-06-12 3:13 ` [patch update] " Magnus Damm
2009-06-12 3:13 ` [patch update] Re: [linux-pm] " Magnus Damm
2009-06-12 8:11 ` Oliver Neukum
2009-06-12 10:54 ` [patch update] " Magnus Damm
2009-06-12 10:54 ` [patch update] Re: [linux-pm] " Magnus Damm
2009-06-12 10:54 ` Magnus Damm
2009-06-12 8:11 ` [patch update] " Oliver Neukum
2009-06-11 9:08 ` Oliver Neukum
2009-06-11 5:18 ` Magnus Damm
2009-06-10 20:48 ` [linux-pm] " Alan Stern
2009-06-10 20:48 ` Alan Stern
2009-06-10 21:15 ` Rafael J. Wysocki
2009-06-10 21:15 ` [linux-pm] " Rafael J. Wysocki
2009-06-10 20:48 ` Alan Stern
2009-06-09 22:57 ` Rafael J. Wysocki
2009-06-09 2:49 ` Alan Stern
2009-06-09 7:31 ` [linux-pm] " Oliver Neukum
2009-06-09 7:31 ` Oliver Neukum
2009-06-09 23:02 ` Rafael J. Wysocki
2009-06-09 23:02 ` [linux-pm] " Rafael J. Wysocki
2009-06-09 7:31 ` Oliver Neukum
2009-06-08 21:31 ` Rafael J. Wysocki
2009-06-08 6:54 ` Ingo Molnar
2009-06-08 6:54 ` Run-time PM idea (was: Re: [linux-pm] " Ingo Molnar
2009-06-08 11:30 ` Rafael J. Wysocki
2009-06-08 13:05 ` Ingo Molnar
2009-06-08 13:11 ` Matthew Garrett
2009-06-08 13:22 ` Run-time PM idea (was: " Ingo Molnar
2009-06-08 13:22 ` Run-time PM idea (was: Re: [linux-pm] " Ingo Molnar
2009-06-08 13:32 ` Matthew Garrett
2009-06-08 13:46 ` Run-time PM idea (was: " Ingo Molnar
2009-06-08 13:46 ` Ingo Molnar [this message]
2009-06-08 13:54 ` Matthew Garrett
2009-06-08 13:54 ` Run-time PM idea (was: Re: [linux-pm] " Matthew Garrett
2009-06-08 14:24 ` Run-time PM idea (was: " Ingo Molnar
2009-06-08 14:24 ` Run-time PM idea (was: Re: [linux-pm] " Ingo Molnar
2009-06-08 14:35 ` Run-time PM idea (was: " Matthew Garrett
2009-06-08 14:35 ` Run-time PM idea (was: Re: [linux-pm] " Matthew Garrett
2009-06-08 14:44 ` Run-time PM idea (was: " Ingo Molnar
2009-06-08 14:44 ` Run-time PM idea (was: Re: [linux-pm] " Ingo Molnar
2009-06-08 14:51 ` Matthew Garrett
2009-06-24 15:03 ` Run-time PM idea (was: " Pavel Machek
2009-06-24 15:03 ` Run-time PM idea (was: Re: [linux-pm] " Pavel Machek
2009-06-08 14:51 ` Run-time PM idea (was: " Matthew Garrett
2009-06-19 1:50 ` Robert Hancock
2009-06-19 1:50 ` Robert Hancock
2009-06-08 13:58 ` Oliver Neukum
2009-06-08 13:58 ` Run-time PM idea (was: Re: [linux-pm] " Oliver Neukum
2009-06-08 13:58 ` Oliver Neukum
2009-06-08 13:32 ` Run-time PM idea (was: " Matthew Garrett
2009-06-08 13:39 ` Oliver Neukum
2009-06-08 13:39 ` Run-time PM idea (was: Re: [linux-pm] " Oliver Neukum
2009-06-08 13:44 ` Run-time PM idea (was: " Matthew Garrett
2009-06-08 13:44 ` Run-time PM idea (was: Re: [linux-pm] " Matthew Garrett
2009-06-08 14:21 ` Ingo Molnar
2009-06-08 14:30 ` Matthew Garrett
2009-06-08 15:06 ` Run-time PM idea (was: " Ingo Molnar
2009-06-08 15:06 ` Run-time PM idea (was: Re: [linux-pm] " Ingo Molnar
2009-06-08 15:11 ` Matthew Garrett
2009-06-08 15:11 ` Run-time PM idea (was: " Matthew Garrett
2009-06-08 16:29 ` Ray Lee
2009-06-08 16:29 ` Run-time PM idea (was: Re: [linux-pm] " Ray Lee
2009-06-08 16:29 ` Ray Lee
2009-06-08 14:30 ` Run-time PM idea (was: " Matthew Garrett
2009-06-09 22:44 ` Jiri Kosina
2009-06-09 22:44 ` Run-time PM idea (was: Re: [linux-pm] " Jiri Kosina
2009-06-08 14:21 ` Run-time PM idea (was: " Ingo Molnar
2009-06-08 13:11 ` Matthew Garrett
2009-06-08 13:05 ` Ingo Molnar
2009-06-08 11:30 ` Rafael J. Wysocki
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=20090608134647.GA14234@elte.hu \
--to=mingo@elte.hu \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=magnus.damm@gmail.com \
--cc=mjg59@srcf.ucam.org \
--cc=rjw@sisk.pl \
--cc=stern@rowland.harvard.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 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.