public inbox for linux-pm@vger.kernel.org
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Daniel Barkalow <barkalow@iabervon.org>
Cc: Robert Hancock <hancockr@shaw.ca>,
	Matthew Garrett <mjg59@srcf.ucam.org>,
	Pavel Machek <pavel@ucw.cz>, Jeff Garzik <jeff@garzik.org>,
	pm list <linux-pm@lists.osdl.org>, Willy Tarreau <w@1wt.eu>,
	linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] Re: NAK new drivers without proper power management?
Date: Sun, 11 Feb 2007 19:53:00 +0100	[thread overview]
Message-ID: <200702111953.02229.rjw@sisk.pl> (raw)
In-Reply-To: <Pine.LNX.4.64.0702111154570.20138@iabervon.org>

On Sunday, 11 February 2007 18:27, Daniel Barkalow wrote:
> On Sun, 11 Feb 2007, Rafael J. Wysocki wrote:
> 
> > The problem is it was made implicit long ago.  The design is "optimistic", so
> > to speak, and I think we have the following choices:
> > 
> > 1) Change the design to make the kernel refuse to suspend if there are any
> > drivers not explicitly flagged as "suspend/resume-safe".  [This looks like a
> > lot of work to me, but it is generally doable provided that someone has enough
> > time to do it.  Unfortunately it has to be done in one shot for all of the
> > known good drivers to avoid user-observable regressions.]
> 
> The kernel wouldn't necessarily have to refuse to suspend.

Well, not from the start, but I think at some point in the fufure it would.

> It could just warn (and list the drivers that aren't marked), or could
> require some extra insistance from the user.

We would have to change the interface for that and I don't want to do it.

> It would be good to have it log a message saying something like: "If you can
> read this, report that ne2000 seems to be safe for suspend/resume".

Sure, it would.

> Having drivers explicitly marked as to whether they are safe is a good kernel
> feature; what to do if they're not is policy.

That's true, but I assume that the people who opt for doing that are also
willing to take part in the review of the drivers. :-)

> > 2) Require the authors of new drivers to _either_ ensure that their drivers
> > will be suspend/resume-safe (and I mean both STR and STD here), _or_ explicitly
> > flag the drivers as "suspend/resume-unsafe", for example by impelenting
> > .suspend() routines returning -ENOSYS.  [The existing drivers can be modified
> > to follow this convention gradually.]
> 
> I don't see any reason not to do (2) regardless of (1). That was (my idea 
> of) the statement that started this thread: new drivers need to not mess 
> up on suspend/resume, as a matter of suitability for inclusion. Of course, 
> we need some way for drivers to indicate that they work fine with the 
> PCI-layer defaults. And it should probably more machine-readable than the 
> author telling reviewers that it works.

Well, if we change the design to fail by default, the authors of new drivers
will only have to flag them if they believe that the drivers are
suspend/resume-safe.

> > - Problem what to do with drivers that work for some people and don't work
> > for the others (ie. if we don't flag them as known good, we will break the
> > setups in which they work)
> 
> I think the only interesting case here is when a device resumes fine with 
> no driver support if the BIOS manages to deal effectively with it, but the 
> BIOS generally doesn't.

Well, I don't think so.  Let's estimate the number of drivers that define
.resume() right now:

$ grep -I -l -r '.resume =' linux-2.6.20/drivers/ | wc
    102     102    4169

And I think there are much more drivers that really work fine with respect
to the suspend/resume.

This indicates that in fact many drivers can be marked as known good even
though they don't define the .suspend() or .resume() routines.

Greetings,
Rafael

  reply	other threads:[~2007-02-11 18:53 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <fa.xSKPgY66Q+DPCZ1pszFFfdrJ0To@ifi.uio.no>
     [not found] ` <45CD24F6.8090107@shaw.ca>
     [not found]   ` <1171076554.10170.5.camel@nigel.suspend2.net>
2007-02-10  9:34     ` [PATCH] Re: NAK new drivers without proper power management? Rafael J. Wysocki
2007-02-10 10:02       ` Nigel Cunningham
2007-02-10 10:30         ` Rafael J. Wysocki
2007-02-10 17:52           ` Daniel Barkalow
2007-02-10 19:50             ` Rafael J. Wysocki
2007-02-11  6:54               ` Willy Tarreau
2007-02-11 12:13                 ` Matthew Garrett
2007-02-11 13:09                   ` Willy Tarreau
2007-02-11 13:19                     ` Matthew Garrett
2007-02-11 13:37                       ` Willy Tarreau
2007-02-11 13:50                         ` Rafael J. Wysocki
2007-02-11 13:57                           ` Willy Tarreau
2007-02-11 14:36                             ` Rafael J. Wysocki
2007-02-11 15:19                               ` Pekka Enberg
2007-02-11 18:31                                 ` Rafael J. Wysocki
2007-02-11 17:27                               ` Daniel Barkalow
2007-02-11 18:53                                 ` Rafael J. Wysocki [this message]
2007-02-11 23:06                                   ` Nigel Cunningham
2007-02-11 23:10                                     ` Rafael J. Wysocki
2007-02-11 21:04                               ` Stefan Richter
2007-02-11 21:10                     ` Pavel Machek
2007-02-11 17:36                   ` Robert Hancock
2007-02-11 22:49                   ` Nigel Cunningham
2007-02-11 19:37             ` 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=200702111953.02229.rjw@sisk.pl \
    --to=rjw@sisk.pl \
    --cc=barkalow@iabervon.org \
    --cc=hancockr@shaw.ca \
    --cc=jeff@garzik.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@lists.osdl.org \
    --cc=mjg59@srcf.ucam.org \
    --cc=pavel@ucw.cz \
    --cc=w@1wt.eu \
    /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