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 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.