From: Dave Jones <davej@redhat.com>
To: Pavel Machek <pavel@ucw.cz>
Cc: linux-pm@lists.osdl.org
Subject: Re: suspending to disk on FC6 not working
Date: Tue, 26 Sep 2006 22:51:34 -0400 [thread overview]
Message-ID: <20060927025134.GB29182@redhat.com> (raw)
In-Reply-To: <20060927023631.GD3108@redhat.com>
On Tue, Sep 26, 2006 at 10:36:31PM -0400, Dave Jones wrote:
> On Wed, Sep 27, 2006 at 12:15:56AM +0200, Pavel Machek wrote:
> > Hi!
> >
> > > > > Please boot the kernel with "2" appended to the command line, so the system
> > > > > goes to the 2nd runlevel (ie. without network servers and X). Then log in
> > > > > as root, do "echo 8 > /proc/sys/kernel/printk" and
> > > > > "echo disk > /sys/power/state". The system should suspend to disk and power
> > > > > off the machine. If it doesn't do that (ie. if it returns to the shell
> > > > > immediately), please do "dmesg > dmesg.log" and send the dmesg.log file
> > > > > to me.
> > > >
> > > > The system didn't power off, it returned to the shell. I attached dmesg.
> > >
> > > Pavel, it looks like we have a problem with the CPU suspend on this box:
> > >
> > > acpi acpi: freeze
> > > PM: snapshotting memory.
> > > Class driver suspend failed for cpu0
> > > Could not power down device &q->lock: error -22
>
> That's an interesting device name.
>
> > > Some devices failed to power down, aborting suspend
> > > acpi acpi: resuming
> >
> > That looks like cpufreq/acpi, no?
>
> Looking at drivers/cpufreq/cpufreq.c:cpufreq_suspend(),
> There's only two ways we can fail that function. In one way,
> we'll see a printk, and the other we silently -EINVAL.
> Given the log doesn't show the printk, we must be failing here..
>
> cpu_policy = cpufreq_cpu_get(cpu);
> if (!cpu_policy)
> return -EINVAL;
>
> cpufreq_cpu_get has a number of potential ways it could fail however,
> and isn't very chatty about failing, so we've no real idea
> what's falling apart there.
This patch might give us some more clues.
Dave
--- 1/drivers/cpufreq/cpufreq.c 2006-09-24 00:26:42.000000000 -0400
+++ 2/drivers/cpufreq/cpufreq.c 2006-09-26 22:48:49.000000000 -0400
@@ -63,27 +63,36 @@ struct cpufreq_policy *cpufreq_cpu_get(u
struct cpufreq_policy *data;
unsigned long flags;
- if (cpu >= NR_CPUS)
+ if (cpu >= NR_CPUS) {
+ printk(KERN_DEBUG "cpufreq_cpu_get failed (!>=NR_CPUS)\n");
goto err_out;
+ }
/* get the cpufreq driver */
spin_lock_irqsave(&cpufreq_driver_lock, flags);
- if (!cpufreq_driver)
+ if (!cpufreq_driver) {
+ printk(KERN_DEBUG "cpufreq_cpu_get failed (!driver)\n");
goto err_out_unlock;
+ }
- if (!try_module_get(cpufreq_driver->owner))
+ if (!try_module_get(cpufreq_driver->owner)) {
+ printk(KERN_DEBUG "cpufreq_cpu_get failed (!try_module_get)\n");
goto err_out_unlock;
-
+ }
/* get the CPU */
data = cpufreq_cpu_data[cpu];
- if (!data)
+ if (!data) {
+ printk(KERN_DEBUG "cpufreq_cpu_get failed (!data)\n");
goto err_out_put_module;
+ }
- if (!kobject_get(&data->kobj))
+ if (!kobject_get(&data->kobj)) {
+ printk(KERN_DEBUG "cpufreq_cpu_get failed (!kobject_get)\n");
goto err_out_put_module;
+ }
spin_unlock_irqrestore(&cpufreq_driver_lock, flags);
return data;
next prev parent reply other threads:[~2006-09-27 2:51 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-09-24 22:55 suspending to disk on FC6 not working Louis Garcia
2006-09-25 7:16 ` Rafael J. Wysocki
2006-09-25 17:10 ` Louis Garcia
2006-09-25 18:43 ` Rafael J. Wysocki
2006-09-25 19:34 ` Louis Garcia
2006-09-25 20:15 ` Rafael J. Wysocki
2006-09-25 23:04 ` Louis Garcia
2006-09-26 10:00 ` Rafael J. Wysocki
2006-09-26 21:47 ` Louis Garcia
2006-09-26 22:01 ` Rafael J. Wysocki
2006-09-26 22:15 ` Pavel Machek
2006-09-26 22:26 ` Rafael J. Wysocki
2006-09-26 22:39 ` Louis Garcia
2006-09-26 22:45 ` Pavel Machek
2006-09-26 22:54 ` Rafael J. Wysocki
2006-09-26 22:58 ` Pavel Machek
2006-09-26 23:09 ` Louis Garcia
2006-09-26 23:12 ` Pavel Machek
2006-09-27 2:36 ` Dave Jones
2006-09-27 2:51 ` Dave Jones [this message]
2006-09-27 6:55 ` Louis Garcia
2006-09-29 20:54 ` Dave Jones
-- strict thread matches above, loose matches on Subject: below --
2006-09-29 21:35 Pallipadi, Venkatesh
2006-09-29 22:14 ` Pavel Machek
2006-09-29 22:25 ` Dave Jones
2006-09-29 22:23 Pallipadi, Venkatesh
2006-09-29 22:55 Pallipadi, Venkatesh
2006-10-01 2:49 ` Louis Garcia
2006-10-01 3:21 ` Dave Jones
2006-10-01 5:00 ` Louis Garcia
2006-10-01 5:05 ` Dave Jones
2006-10-01 5:30 ` Pavel Machek
2006-10-01 5:07 Pallipadi, Venkatesh
2006-10-01 5:22 ` Dave Jones
2006-10-01 12:28 ` Rafael J. Wysocki
2006-10-01 18:36 ` Dave Jones
2006-10-01 18:38 ` Pavel Machek
2006-10-01 18:56 ` Dave Jones
2006-10-01 5:22 ` Louis Garcia
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=20060927025134.GB29182@redhat.com \
--to=davej@redhat.com \
--cc=linux-pm@lists.osdl.org \
--cc=pavel@ucw.cz \
/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