From: Matthew Garrett <mjg59@srcf.ucam.org>
To: David Brownell <david-b@pacbell.net>
Cc: Arjan van de Ven <arjan@infradead.org>,
linux-kernel@vger.kernel.org, gregkh@suse.de
Subject: Re: Changes to PM layer break userspace
Date: Wed, 20 Dec 2006 04:26:48 +0000 [thread overview]
Message-ID: <20061220042648.GA19814@srcf.ucam.org> (raw)
In-Reply-To: <200612191959.43019.david-b@pacbell.net>
On Tue, Dec 19, 2006 at 07:59:42PM -0800, David Brownell wrote:
> On Tuesday 19 December 2006 4:25 pm, Matthew Garrett wrote:
> > 1) feature-removal-schedule.txt says that it'll be removed in July 2007.
> > This isn't July 2007.
>
> Which is why the functionality is still there.
Merely broken in the majority of cases...
> > 2) The functionality was disabled in 2.6.19. The addition to
> > feature-removal-schedule.txt was in, uh, 2.6.19.
>
> Please respond to the technical explanation I provided, and stop
> referring to the functionality ** which is still there and works **
> as being disabled.
The breakage is that devices that are happy to suspend with enabled
interrupts can no longer be suspended from userspace. Refusing to
suspend a single device on the basis that some other driver on the bus
may, potentially, at some point require some suspend code to be run with
disabled interrupts is not a sensible choice. Especially since I can't
actually find a single driver in the kernel tree that currently uses
this functionality.
> I can't help it if that schedule.txt patch took until 2.6.19 to get
> upstream; ISTR it was available before 2.6.18 shipped. Maybe patches
> to that file should be accelerated, even into the stable series.
That would still not have provided anywhere near enough warning.
> One of the missing steps in Linus' formulation there is that not all
> interfaces are equivalent in terms of support guarantee. Bugs are
> interfaces, for example, and sometimes folk wrongly depend on them
> when they persist for a long time (like, cough, this one).
The existence of the power/state interface wasn't a bug - it was a
deliberate decision to add it. It's the only reason the
dpm_runtime_suspend() interface exists. It's perfectly reasonable to
refer to it as a flawed interface, or perhaps even a buggy one. But in
itself, it's clearly not a bug. And it's perfectly reasonable for
userland to depend on interfaces that are deliberately exposed by the
kernel.
> In contrast, the /sys/devices/.../power/state API has never had many
> users beyond developers trying to test their drivers (without taking
> the whole system into a low power state, which probably didn't work
> in any case), and has *always* been problematic. And the change you
> object to doesn't "break" anything fundamental, either. Everything
> still works.
It's used on every Ubuntu and Suse system, and the change means that
certain functionality no longer works - it's now impossible to prevent
my wireless hardware from drawing power when I'm not using it, for
example. If the WE power operations were deliberately disabled, then
that would also be a bug.
--
Matthew Garrett | mjg59@srcf.ucam.org
next prev parent reply other threads:[~2006-12-20 4:27 UTC|newest]
Thread overview: 119+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-12-19 18:52 Changes to sysfs PM layer break userspace Matthew Garrett
2006-12-19 19:34 ` Arjan van de Ven
2006-12-19 19:44 ` Matthew Garrett
2006-12-19 20:03 ` Arjan van de Ven
2006-12-19 20:08 ` Matthew Garrett
2006-12-19 20:23 ` Arjan van de Ven
2006-12-19 20:32 ` Matthew Garrett
2006-12-19 20:55 ` Arjan van de Ven
2006-12-21 0:08 ` Kyle Moffett
2006-12-19 21:34 ` David Brownell
2006-12-20 0:25 ` Matthew Garrett
2006-12-20 3:59 ` Changes to " David Brownell
2006-12-20 4:26 ` Matthew Garrett [this message]
2006-12-20 5:14 ` David Brownell
2006-12-20 5:34 ` Greg KH
2006-12-20 5:52 ` Matthew Garrett
2006-12-20 7:50 ` Arjan van de Ven
2006-12-20 12:53 ` Network drivers that don't suspend on interface down Matthew Garrett
2006-12-20 13:38 ` Arjan van de Ven
2006-12-20 14:31 ` Matthew Garrett
2006-12-20 15:51 ` Arjan van de Ven
2006-12-20 22:49 ` Stephen Hemminger
2006-12-20 23:37 ` Rick Jones
2006-12-19 23:51 ` Stephen Hemminger
2006-12-21 0:11 ` Francois Romieu
2006-12-20 0:26 ` Stephen Hemminger
2006-12-21 11:18 ` Francois Romieu
2006-12-21 1:12 ` Matthew Garrett
2006-12-21 2:05 ` Michael Wu
2006-12-21 2:18 ` Matthew Garrett
2006-12-21 2:38 ` Daniel Drake
2006-12-21 2:45 ` Matthew Garrett
2006-12-21 3:08 ` Daniel Drake
2006-12-21 3:25 ` Matthew Garrett
2006-12-21 3:37 ` Dan Williams
2006-12-21 3:29 ` Dan Williams
2006-12-21 3:14 ` Dan Williams
2006-12-21 13:14 ` jamal
2006-12-21 2:29 ` Daniel Drake
2006-12-21 2:10 ` Jesse Brandeburg
2006-12-21 8:54 ` Arjan van de Ven
2006-12-22 1:03 ` Herbert Xu
2006-12-23 8:54 ` Pavel Machek
2006-12-20 15:27 ` Olivier Galibert
2006-12-20 15:34 ` Arjan van de Ven
2006-12-20 16:40 ` Olivier Galibert
2006-12-20 17:21 ` Arjan van de Ven
2006-12-20 20:40 ` Benny Amorsen
2006-12-20 21:49 ` Arjan van de Ven
2006-12-20 21:15 ` Stefan Rompf
2006-12-20 14:00 ` Jiri Benc
2006-12-20 18:12 ` Dan Williams
2006-12-21 1:15 ` Matthew Garrett
2006-12-21 1:57 ` Michael Wu
2006-12-21 2:20 ` Matthew Garrett
2006-12-21 3:02 ` Dan Williams
2006-12-21 3:06 ` Dan Williams
2006-12-21 3:14 ` Matthew Garrett
2006-12-21 3:32 ` Dan Williams
2006-12-21 13:19 ` Sven-Haegar Koch
2006-12-21 17:16 ` Dan Williams
2006-12-21 18:27 ` Valdis.Kletnieks
2006-12-22 1:25 ` Matt Domsch
2006-12-20 16:04 ` Maciej W. Rozycki
2006-12-22 21:09 ` Changes to PM layer break userspace Pavel Machek
2006-12-24 7:02 ` David Brownell
2006-12-28 13:31 ` Alan
2006-12-28 16:04 ` Arjan van de Ven
2006-12-29 5:27 ` David Brownell
2006-12-20 2:15 ` Changes to sysfs " Andrew Morton
2006-12-20 2:35 ` Randy Dunlap
2006-12-20 3:49 ` Andrew Morton
2006-12-20 3:29 ` David Brownell
2006-12-21 3:51 ` Andrew Morton
2006-12-21 4:56 ` David Brownell
2006-12-21 5:02 ` Andrew Morton
2006-12-21 7:05 ` David Brownell
2006-12-21 8:27 ` Arjan van de Ven
2006-12-22 20:44 ` Pavel Machek
2006-12-23 14:02 ` Stefan Seyfried
2006-12-19 21:22 ` David Brownell
2006-12-19 22:57 ` Matthew Garrett
2006-12-19 23:36 ` Changes to " David Brownell
2006-12-20 0:09 ` Matthew Garrett
2006-12-20 3:19 ` David Brownell
2006-12-20 3:43 ` Matthew Garrett
2006-12-20 4:15 ` David Brownell
2006-12-20 4:56 ` [PATCH 1/2] Fix /sys/device/.../power/state Matthew Garrett
2006-12-20 21:18 ` David Brownell
2006-12-21 1:29 ` Matthew Garrett
2006-12-21 3:04 ` David Brownell
2006-12-21 4:06 ` Matthew Garrett
2006-12-21 4:51 ` David Brownell
2007-01-25 5:00 ` [PATCH] Fix /sys/device/.../power/state regression Matthew Garrett
2007-01-26 19:59 ` Andrew Morton
2007-01-26 20:42 ` Greg KH
2007-01-27 1:26 ` Matthew Garrett
2007-01-27 17:19 ` Pavel Machek
2007-01-26 20:41 ` Greg KH
2007-01-26 21:56 ` David Brownell
2007-01-26 22:19 ` Greg KH
2007-01-26 23:15 ` Matthew Garrett
2007-01-27 0:42 ` David Brownell
2007-01-27 0:56 ` Andrew Morton
2007-01-27 2:40 ` David Brownell
2007-01-27 17:38 ` Pavel Machek
2007-01-27 22:42 ` Matthew Garrett
2007-01-31 10:34 ` Pavel Machek
2007-01-27 1:19 ` Matthew Garrett
2007-01-27 3:02 ` David Brownell
2007-01-29 17:36 ` Stephen Hemminger
2007-01-27 13:17 ` Pavel Machek
2007-01-30 18:43 ` Eric Piel
2007-01-30 18:47 ` Oliver Neukum
2007-01-30 19:01 ` Eric Piel
2007-01-31 10:55 ` Jiri Kosina
2007-01-31 11:03 ` Oliver Neukum
2006-12-20 4:56 ` [PATCH 2/2] Update feature-removal-schedule.txt Matthew Garrett
2006-12-22 20:47 ` Changes to PM layer break userspace 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=20061220042648.GA19814@srcf.ucam.org \
--to=mjg59@srcf.ucam.org \
--cc=arjan@infradead.org \
--cc=david-b@pacbell.net \
--cc=gregkh@suse.de \
--cc=linux-kernel@vger.kernel.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.