How to troubleshoot suspend and hibernate in Ubuntu

13,781

Solution 1

Some tips are at https://wiki.ubuntu.com/DebuggingKernelSuspendHibernateResume

Fails to suspend/hibernate

$ dmesg|less

There is usually an entry what application caused the suspension to fail:

[32467.560058] Freezing of tasks failed after 20.01 seconds (1 tasks refusing to freeze, wq_busy=0):
[32467.560115] plasma-desktop D 0000000000000000 0 2065 1 0x00800004
...

The stack trace often tells you where the problem might lie:

[32467.560155] [<ffffffff81087f00>] ? autoremove_wake_function+0x0/0x40
[32467.560163] [<ffffffffa016e523>] SendReceive+0x1a3/0x3b0 [cifs]
[32467.560169] [<ffffffffa0153c79>] CIFSSMBUnixQPathInfo+0x139/0x2b0 [cifs]
[32467.560176] [<ffffffffa016853d>] cifs_get_inode_info_unix+0x7d/0x1a0

Fail to resume

Make sure the swap partition is correctly set, see https://help.ubuntu.com/community/SwapFaq

Solution 2

I used to have Ubuntu hibernation issue on laptop as well as desktops. Then I read somewhere, and which made sense, was that the swap space must be big enough to store the current memory contents. So a good rule of thumb is to have a swap space slightly bigger than the physical memory the laptop has.

So I used 1.6GB of swap for 1GB memory in the next Ubuntu release installation (I am now on Ubuntu 10.04) and I can hibernate the laptop without any issue.

Another way to make it work is to use swap file and not swap partition. Below link has more details:

Hybernate without partition

Solution 3

Depends on what exactly the issue is. I would start by carefully examining the pm-suspend.log

I found the page on Debian website more helpful than the one on the Ubuntu site as far as suspend troubleshooting goes: https://wiki.debian.org/Suspend

In my case 1 out of every few suspends causes the system to freeze (not going in suspend). From the pm-suspend.log, I found that the issue has to do with the video card driver:

Successful suspend message:

Running hook /usr/lib/pm-utils/sleep.d/99video suspend suspend:
kernel.acpi_video_flags = 0
/usr/lib/pm-utils/sleep.d/99video suspend suspend: success.

Failed suspend messages:

Running hook /usr/lib/pm-utils/sleep.d/99video suspend suspend:

And then nothing, this is where it hangs.

The next step is to enable debugging by inserting line export PM_DEBUG=true into the beginning of file /usr/lib/pm-utils/pm-functions. After I did this, I found that it hung at chvt 63 and I found a bug report that eventually made me install the Proprietary video driver from the manufacturer.

Share:
13,781

Related videos on Youtube

Aerik
Author by

Aerik

Updated on September 17, 2022

Comments

  • Aerik
    Aerik almost 2 years

    I have Ubuntu Lucid installed on a Panasonic Toughbook CF-29. Most things work well, but, under Gnome, suspend and hibernate do not work. Interestingly, in Xubuntu, hibernate does work. So my question is twofold:

    1) How do I troubleshoot the hibernate function in Gnome desktop (since I know the laptop can hibernate in Ubuntu), and

    2) How to go about troubleshooting the suspend function? I got as far as looking at the /var/log/pm-suspend.log, but that just tells me the things that ran successfully... I'm kind of stuck there.

  • Aerik
    Aerik almost 13 years
    Hmm... I've looked at a bunch of stuff like this. Mostly what I've seen are "shotgun" solutions (like "try uswsusp"). My question is really more "how to troubleshoot". I'm looking for a linux guru who is familiar with these components in the different variants of Ubuntu to give some pointers as to how to figure it out, not just go down a long list of things to try to see if they work.
  • harrymc
    harrymc almost 13 years
    As the problem seems to be localized to the Ubuntu distribution and only on laptops, you might be better asking it in their forums. As a last note, the following threads contain lots of pointers and info : Troubleshooting suspend and hibernate and How to troubleshoot Suspend/Hibernate in Ubuntu 10.10.
  • David Yates
    David Yates almost 13 years
    funny - it worked fine for me on my netbook :)
  • Aerik
    Aerik almost 13 years
    Great link - I hadn't actually seen that one yet. AFAIC, this answer is the best answer to date to my question ("how to troubleshoot"...) so I'm awarding the bounty here.