machine hangs on resume from hibernate, need help

Questions about applications and software
Forum rules
Before you post please read how to get help
Post Reply
JaguarNight
Level 2
Level 2
Posts: 75
Joined: Sat Feb 19, 2011 3:06 pm

machine hangs on resume from hibernate, need help

Post by JaguarNight » Wed Jun 01, 2011 3:56 pm

LM10, 64 bit, gnome

Just ran some updates on the system - all went fine
also installed "hibernate" script from software manager as an alternative to default hibernate method
not sure if it's updates or hibernate script ( requires uswsusp ) but
the hibernate method switched
from the 1. default = swsusp to -> 2. newer version = uswsusp

info: by what if found out on the web there are basically 3 methods to hibernate and suspend in linux ( including mint )
1. with "swsusp" suspend method, sometimes called kernel suspend/hibernate
2. with newer improved "uswsusp" method, which also provides text/messages feedback during hibernate/suspend
3. third party script and apps for suspend/hibernate functions, such as "hibernate" script in mint software manager or "tuxonice" app
( actually the 3rd method is an extension of the 2nd method i guess )

for list of suspend/hibernate methods see link here:
http://www.suspend2.net/features

default swsusp method works ok, i can activate it with the following command:
sudo -i
echo disk > /sys/power/state - for hibernate
echo mem > /sys/power/state - for suspend

anyway, somehow ( either as are result of updates or by installing "hibernate" utility ) my machine switched from 1 to 2, ie now using uswsusp method but there is a problem:
suspend ( to ram ) - works
resume from suspend - works
hibernate ( to disk ) - works, i see text and % done, etc... until the machine shuts down
but *resume from hibernate* - after loading the image data the machine just hangs!

the messages i get during resume from hibernate ...
turn the machine on... grub screen, lm boot splash and then
progress:
resuming from /dev/disk/by_uuid/....
resume: libcrypt version 1.4.5
looking for splash system ... none
resume: compressed image
loading image data pages( 537334 pages ) ...100% done
wrote 2099.0mb in 45.2 seconds ( 46.4mb/s)
read 2099.0 mb in 18.8 seconds ( 111.5 mb/s )
total image i/o 4197.9mb in 64.0 seconds ( 65.6 mb/s )

and then the machine just hangs
If i go without text then it just hangs on this splash message:
Resuming from /dev/disk/by_uuid/....

Anybody familiar with USWSUSP method please help out how to troubleshoot
and what could cause it lock up after loading saved image ?

Thanks!

JaguarNight
Level 2
Level 2
Posts: 75
Joined: Sat Feb 19, 2011 3:06 pm

Re: machine hangs on resume from hibernate, need help

Post by JaguarNight » Wed Jun 01, 2011 4:30 pm

More info on the issue:

Looks like the default method for suspend/hibernate in mint = "swsusp" and not "uswsusp"
Looks like "uswsusp" was installed as a dependency by "hibernate" utility,
btw, hibernate utility scriipt did nothing for me except complain that it needed tuxonice app, but it did 2 bad things:
1. it turned off default swsusp method of hibernation/suspend
2. it did not correctly configure the new method uswsusp - so now i got a problem

( see software manager for these apps: uswsusp, hibernate, but do NOT install them
as they may kill your default suspend/hibernate functions !!! )

So anybody with knowledge of uswsusp method, if you can help me with "hangs on resume from hibernate"
we can sort the issue out and write a "how to"

uswsusp is better method because it provides text/message feedback on hibernate and resume and other functions
such as image encryption, much faster, etc... see the link in the first post.

If we can sort out uswsusp method, we can make a lot of users aware and happier with hibernate/suspend functions...

I guess a solution for me is uninstall uswsusp and go back to default hibernate method, but still i wanna try to solve
this problem and get a better hibernate function.

Regards.

JaguarNight
Level 2
Level 2
Posts: 75
Joined: Sat Feb 19, 2011 3:06 pm

Re: machine hangs on resume from hibernate, need help

Post by JaguarNight » Thu Jun 02, 2011 3:23 pm

Alright, here is the deep dig on hibernate/suspend methods in linux.

ppl read this if you want to know the basics of hibernate/suspend methods, apps, scripts etc...

4 methods:
1. default in mint or debian or ubuntu - called SWSUSP method, also known as "kernel" hibernate/suspend method,
the oldest, the original, etc... slow and does not provide any text feedback during hibernation or suspend ( just blacks out the screen ), except on errors,
tested and works well and is reliable, this method integrates automatically with gnome, gnome power manager, panel buttons etc... it uses pm-utils package.

btw, this method can be called from terminal with these commands
sudo -i
echo disk > /sys/power/state - for hibernate
or
echo ram > /sys/power/state - for suspend

links on the method + other methods explained:
https://help.ubuntu.com/community/Power ... t/Overview

2. newer method ( not default in mint, ubuntu or debian ) - called USWSUSP method ( 2 methods, s2disk as hibernate and s2ram as suspend )
also known as "userspace suspend", it's newer, written by same guy who wrote the 1st original method, it's faster, supports encryption of image file,
provides text feedback during hibernate/suspend, not totally tested and thus not reliable, not yet widely used, not a lot of info on it on google,
type USWSUSP in Synaptic to get the info, install at your own risk, may work for you, if works straight off then keep this method else
if does not work - do complete uninstall on it and the original basic SWSUSP hibernate/suspend method will be automatically restored.

This method did not work for me, I did a lot of tweaking on it based on google search, nada - did not work no matter what I tried ( uuid tweak, uswsusp.conf tweaks,
updating initramfs ) ... the problem was that resume from hibernate hangs my machine after initial image load, see 1st message in this post, tried asking on ubuntu launchpad about this method,
nobody has any clue :D , my guess is everybody is using the 1st method by default and not a lot of ppl know about the 2nd method yet.

links to info on this method:
http://manpages.ubuntu.com/manpages/har ... isk.8.html
http://superuser.com/questions/100400/w ... -hibernate
http://en.wikipedia.org/wiki/Uswsusp
http://suspend.sourceforge.net/

3. "hibernate" script, type hibernate in synaptic and read info on it, basically it was written by same ppl that designed tuxonice ( see below )
it did not work for me either, did not do nothing...zip ( + i got nvidia card which is know to have problems with these methods )
what it does however when you install it, it automatically installs USWSUSP without any freaking
warning that it's going to switch to a different hibernate/suspend method and it that in turn does not work then it will create much confusion about
loss of hibernate/suspend functions for users... recommendation - don't install this script.

4. tuxonice - full blown app for supposedly better and faster hibernate/suspend methods...
I looked at it without installing and passed on it... don't need no fancy app for hibernate/suspend

********************
So after trying to get USWSUSP working and failing I switched back to original SWSUSP mode which is working just fine in all modes,
I will now attempt to tweak this method to get some text or message output on screen to get any kind of feedback on what's happening
during hibernate/suspend/resume processes... will post if I find any hacks on that.

Regards.

linuxuser159
Level 2
Level 2
Posts: 96
Joined: Thu May 12, 2011 2:02 am

Re: machine hangs on resume from hibernate, need help

Post by linuxuser159 » Thu Jun 02, 2011 5:26 pm

in my case, the problem was using the generic graphics driver. all i did was install nvidia propriety driver. this trick worked on different distros.

JaguarNight
Level 2
Level 2
Posts: 75
Joined: Sat Feb 19, 2011 3:06 pm

Re: machine hangs on resume from hibernate, need help

Post by JaguarNight » Sat Jun 04, 2011 1:58 pm

ppl,

here is a link to documentation for SWSUSP - default hibernate/suspend method
http://www.mjmwired.net/kernel/Document ... swsusp.txt

down in the middle there is the description of how to make this method more
verbose, basically how to get text messages on console during hibernate/suspend
supposedly including %DONE ...

from page 328 and down:

Q: How do I make suspend more verbose?
329
330 A: If you want to see any non-error kernel messages on the virtual
331 terminal the kernel switches to during suspend, you have to set the
332 kernel console loglevel to at least 4 (KERN_WARNING), for example by
333 doing
334
335 # save the old loglevel
336 read LOGLEVEL DUMMY < /proc/sys/kernel/printk
337 # set the loglevel so we see the progress bar.
338 # if the level is higher than needed, we leave it alone.
339 if [ $LOGLEVEL -lt 5 ]; then
340 echo 5 > /proc/sys/kernel/printk
341 fi
342
343 IMG_SZ=0
344 read IMG_SZ < /sys/power/image_size
345 echo -n disk > /sys/power/state
346 RET=$?
347 #
348 # the logic here is:
349 # if image_size > 0 (without kernel support, IMG_SZ will be zero),
350 # then try again with image_size set to zero.
351 if [ $RET -ne 0 -a $IMG_SZ -ne 0 ]; then # try again with minimal image size
352 echo 0 > /sys/power/image_size
353 echo -n disk > /sys/power/state
354 RET=$?
355 fi
356
357 # restore previous loglevel
358 echo $LOGLEVEL > /proc/sys/kernel/printk
359 exit $RET

However I'm not sure if this a kernel hack ( requires a kernel patch ) or just a script
that needs to be inserted somewhere in some file ??? the answer is not clear on
that...

Anybody with kernel knowledge, please help out on this issue, thanks.

Regards.

Post Reply

Return to “Software & Applications”