mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Linus Torvalds <torvalds@osdl.org>
Cc: Chuck Ebbert <76306.1226@compuserve.com>,
	linux-kernel <linux-kernel@vger.kernel.org>,
	Andrew Morton <akpm@osdl.org>
Subject: Re: [patch] PM: suspend/resume debugging should depend on  SOFTWARE_SUSPEND
Date: Sun, 19 Nov 2006 19:55:23 +0100	[thread overview]
Message-ID: <200611191955.23782.rjw@sisk.pl> (raw)
In-Reply-To: <Pine.LNX.4.64.0611191008310.3692@woody.osdl.org>

On Sunday, 19 November 2006 19:21, Linus Torvalds wrote:
> 
> On Sun, 19 Nov 2006, Rafael J. Wysocki wrote:
> >
> > In fact that's up to 30 seconds on a modern box, usually less than that.
> 
> Right. If the machine boots quickly, it's fast. Of course, if the machine 
> boots quickly, you might as well often just shut down and reboot.

Yes, if the only thing you want to run is the kernel.  The applications aren't
going to start so quickly, you know. ;-)

> > And suspend-to-ram doesn't work on quilte a lot of boxes right now.  Also, you
> > can use the software suspend on boxes that don't support the suspend-to-ram
> > at all.
> 
> One large reason STR often doesn't work is that people don't even test it,

Well, the majority of bugzilla reports I'm tracking are STR-related, so people
_do_ test it, really.

> because people point to the suspend-to-disk instead.

Who they?

> suspend-to-disk is the problem, not the solution.

If given machine doesn't support the STR or has a broken BIOS (which means
pretty much the same), the suspend-to-disk is the _only_ way in which you can
suspend it.

I guess you're referring to using the suspend-to-disk instead of the STR which
wouldn't be very reasonable indeed, but still I don't know why you consider
it as a problem.

> I've been working at making the machines I have able to STR, and almost 
> always it's a driver that is buggy. Thank God for the suspend/resume 
> debugging - the thing that Chuck tried to disable. That's often the _only_ 
> way to debug these things, and it's actually pretty powerful (but 
> time-consuming - having to insert TRACE_RESUME() markers into the device 
> driver that doesn't resume and recompile and reboot).
> 
> Anyway, the way to debug this for people who are interested (have a 
> machine that doesn't boot) is:
> 
>  - enable PM_DEBUG, and PM_TRACE

This only works on i386, no?

>  - use a script like this:
> 
> 	#!/bin/sh
> 	sync
> 	echo 1 > /sys/power/pm_trace
> 	echo mem > /sys/power/state
> 
>    to suspend
> 
>  - if it doesn't come back up (which is usually the problem), reboot by 
>    holding the power button down, and look at the dmesg output for things 
>    like
> 
> 	Magic number: 4:156:725
> 	hash matches drivers/base/power/resume.c:28
> 	hash matches device 0000:01:00.0
> 
>    which means that the last trace event was just before trying to resume 
>    device 0000:01:00.0. Then figure out what driver is controlling that 
>    device (lspci and /sys/devices/pci* is your friend), and see if you can 
>    fix it, disable it, or trace into its resume function.
> 
> For example, the above happens to be the VGA device on my EVO, which I 
> used to run with "radeonfb" (it's an ATI Radeon mobility). It turns out 
> that "radeonfb" simply cannot resume that device - it tries to set the 
> PLL's, and it just _hangs_. Using the regular VGA console and letting X 
> resume it instead works fine.
> 
> The point being that PM_TRACE is wonderful, and it's wonderful exactly for 
> NOT using suspend-to-disk. The other point being that people have gotten 
> lazy, and accept half a minute (minimum - usually it's longer) boot times, 
> when STR is a lot more pleasant, but it does require some detective work 
> when it doesn't boot.
> 
> I wish more people tried STR, instead of having the STD people tell them 
> not to!

I don't know of anyone who's doing that.

Yes, we often ask people to try the STD when they report a problem with the
STR to get one more data point, but that doesn't mean we tell them not to try
the STR any more.  Bug reports regarding the STR are accepted and welcome.

Greetings,
Rafael


-- 
You never change things by fighting the existing reality.
		R. Buckminster Fuller

  reply	other threads:[~2006-11-19 18:59 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-11-19  8:18 Chuck Ebbert
2006-11-19  8:29 ` Pavel Machek
2006-11-19 17:33 ` Linus Torvalds
2006-11-19 17:44   ` Rafael J. Wysocki
2006-11-19 18:21     ` Linus Torvalds
2006-11-19 18:55       ` Rafael J. Wysocki [this message]
2006-11-19 19:54         ` Linus Torvalds
2006-11-19 21:25           ` Rafael J. Wysocki
2006-11-19 23:21             ` Linus Torvalds
2006-11-19 22:59         ` Romano Giannetti
2006-11-20 22:17       ` Theodore Tso
2006-11-21  2:02         ` Matthew Garrett
2006-11-23 13:28       ` Pavel Machek
2006-11-19 17:52   ` Mike Galbraith
2006-11-19 18:25     ` Linus Torvalds
2006-11-19 19:02       ` Mike Galbraith
2006-11-19 19:55         ` Linus Torvalds
2006-11-19 18:58     ` Rafael J. Wysocki
2006-11-19 19:53       ` Mike Galbraith
2006-11-23 13:39         ` Pavel Machek
2006-11-23 21:36           ` Mike Galbraith
2006-11-23 21:36             ` Rafael J. Wysocki
2006-11-24  6:39               ` Mike Galbraith
2006-11-24 18:08                 ` Linus Torvalds
2006-11-25  0:22                   ` Mike Galbraith
2006-11-25 14:11                   ` Mike Galbraith
2006-11-25 17:12                     ` Rafael J. Wysocki
2006-11-26  4:53                       ` Mike Galbraith
2006-11-28 10:01                         ` Mike Galbraith
2006-11-29 10:21                           ` Mike Galbraith
2006-11-29 10:30                             ` [rfc patch] " Mike Galbraith
2006-11-29 14:15                               ` Pavel Machek
2006-11-29 19:49                               ` Andrew Morton
2006-11-29 20:05                                 ` Mike Galbraith
2006-11-19 21:41   ` Nigel Cunningham
2006-11-19 22:04   ` Christer Weinigel
2006-12-03 21:40     ` Kyle Moffett
2006-12-04 10:50       ` Pavel Machek
2006-12-04 13:56         ` Henrique de Moraes Holschuh
2006-11-22 15:23   ` Adrian Bunk
2006-11-22 15:42     ` Alan
2006-11-24 23:40       ` Pavel Machek
2006-11-25 16:08         ` Alan
2006-11-25 17:18           ` Rafael J. Wysocki
2006-11-26 20:52           ` Pavel Machek
2006-11-22 23:05   ` Mark Lord
     [not found] <fa.U3NcOE+DHLOUMSq6HkaGglGl7hQ@ifi.uio.no>
     [not found] ` <fa.YMVQ6sabKF/IkEHUCoiQoxoHWZA@ifi.uio.no>
     [not found]   ` <fa.c5fVj98hBgqoUumwbA9jymiSXr8@ifi.uio.no>
     [not found]     ` <fa.zMBHTAXYfXNe2TVX89s3qsC2HRk@ifi.uio.no>
     [not found]       ` <fa.yA6cvuiGulIRQfqY+E9joR2nWog@ifi.uio.no>
     [not found]         ` <fa.bo0iOgKqELDD50VEZpxeUpzPsMg@ifi.uio.no>
2006-11-26  7:11           ` Robert Hancock
2006-11-26 10:13             ` Rafael J. Wysocki
2006-11-26 20:30               ` Robert Hancock
2006-11-27 13:51                 ` Matthew Garrett
2006-12-03 12:49                 ` Rafael J. Wysocki
2006-11-27 12:20             ` Stefan Seyfried

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=200611191955.23782.rjw@sisk.pl \
    --to=rjw@sisk.pl \
    --cc=76306.1226@compuserve.com \
    --cc=akpm@osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=torvalds@osdl.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome