The Answer Gang 99: Software suspend troubles
Software suspend troubles
From Ben Okopnik
Answered By: Thomas Adam, Kapil Hari Paranjape
So, I've installed swsusp - two patches over the kernel, flip a couple
of switches in the kernel config, and "echo > /proc/swsusp/activate".
Hurrah! Cute little screen with a progress bar, etc., and off goes the
laptop. Now comes the interesting part: when I hit the power button, I
see the Acer splash screen, the LILO message, my cute little Tux, and -
the usual kernel load messages flip over to the 'restore the suspend'
screen with its progress bar... until it gets to the point where it says
"Freezing processes: Freezing remaining tasks." Half a second later, it
restarts the restore process, until it gets to the above message... and
so on, and so on, and so on. PLOKTA didn't do anything - until the next
cycle, where the kernel crashed with a panic (!). I ended up having to
reboot using another kernel - lucky that I always have at least two,
since I don't trust the newly-compiled ones to always work!
There's no info about this on the Web, at least according to Google;
just two hits on the relevant line in the code. I'll have to send some
email to the "swsusp" list and see if they can help.
[Thomas]
How are you actually suspending it though, Ben? I suspend this way:
echo 1 > /proc/acpi/sleep
Huh? Then you're not using "swsusp"'s hibernation feature, but the ACPI
"sleep" instead. It's ">/proc/swsusp/activate", as shown in the swsusp
HOWTO. Incidentally, the ACPI "sleep" doesn't work for me, whether 'echo
1' or 'echo 4'.
Yes, you are quite right, the two are different. I really
am not sure what to suggest other than ask on the swsusp ML. I am not
trying to fob you off or anything, but this kind of thing is quite hard to
keep track of... i.e. we don't know what is happening until we reboot,
etc....
grrr
Heck, Thomas, I certainly wasn't taking it badly. If the issue is new
enough that I can't find anything on Google, then it's off to the
developers I go; no one else is going to know anything.
Meanwhile, I've got to juggle the flight school appointment here with my
trip to the Polynesian Culture Center (http://www.polynesia.com); I'll
probably talk to you all next when I'm back in St. Augustine. Cheers!
[Kapil]
There is a nice "comparison table" by Nigel Cunningham regarding the
swsusp patches available at swsusp.sf.net.
Basically, there are three ways to get suspend-to-disk working for 2.6
kernels. There are two methods that are in the default kernel tarball.
There is also a "swsusp2" patch that can be downloaded from the
swsusp.sf.net site.
What is not mentioned (and not configured into the Kconfig scripts) is
that the current versions appear to depend on the "module unloading"
fature that is optional with the 2.6 kernel.
Secondly, while it is true that
echo -n disk > /sys/power/state
or
echo 4 > /proc/acpi/sleep
or
echo 1 > /proc/kernel/suspend/activate or whatever
should suspend-to-disk, it seems to be much smoother to use the "hibernate"
script that can be downloaded as part of the tarball at swsusp.sf.net.
Finally, my own experience with the 1.0.3 patch for 2.4 is that it works
quite well. I haven't had as much stability with the 2.6 suspend
versions. (Works only while testing but fails when actually required
.
Eventually, I'll get around to posting my questions to the swsusp site
once I have all the variables sorted out.
[Heather] Hey gentle readers! If you know more on this topic please feel free to
drop us a note - inquiring minds want working laptops
Copyright © 2004
Copying license http://www.linuxgazette.net/copying.html
Published in Issue 99 of Linux Gazette, February 2004