Page 1 of 1

[SOLVED] Suspend/hibernate doesn't work in Mint 14 Mate

Posted: Mon Feb 11, 2013 11:23 am
by PauloPC
Hi, I've been using Mint in 2 desktops and one laptop for years, and I've never come across this problem:

In my main desktop pc, at home I used to have Mint 12 installed. I had a dual boot with Win Xp. About a year ago I had to do a cold reset in linux and it messed up my system, I had to reinstall Mint and since then the Grub menu never showed up.
Last week end I decided to upgrade my system and did a clean Mint 14 Mate install. It ran fine but I found out that the system does not suspend or hibernate.
I tried to suspend and the system did what it usualy does: disconneted the network, turned off my screen and the power light blinked red. Then it turned right back on.

(When I tried to hibernate for the first time something truly strange happend: the screen turned it self off and then on again, and, for the first time in about a year, I had the grub menu again! Since then , Grub aIways comes up at startup and I can dualboot again Mint/Xp, but never tried to hibernate my pc again).

I installed Nvidia drivers and tried to Suspend my system, it keeps doing the same thing I driscribed above. The same thing happens if I try running pm-suspend from the terminal.

I would appreciate any help...

EDIT:

I just tried to hibernate my pc again and I found out this: the pc shuts restarts and I get the grub menu, but if I choose to start Mint again, it does not really start up- It comes back from hibernation (it takes about 30 seconds only, a fresh start takes about 70 seconds).
This means that if I select "hibernate", and after geting my motherboard's spash screen, I keep pressing th power botton and force a shutdown, my pc is hibernated.

EDIT:
In my case, the problem was that the system was monitoring two USB ports that it shouldn't, because there were devices connect to it- USB0 and USB2. When the pc tried to suspend/hibernate, it detected activity in those usb ports and woke right back up.)
It solved my problem, so, in hope of helping someone else I wrote a step-by-step guide that even a newbie can follow:


1- Go the the Menu and click on "Terminal"

2- In the terminal window type (or copy and paste) this command and press enter:

cat /proc/acpi/wakeup

3- In the terminal window you should see something like this:

Device S-state Status Sysfs node
SLPB S5 *enabled
PCI0 S5 *disabled no-bus:pci0000:00
USB0 S4 *enabled
USB1 S4 *disabled
USB2 S4 *enabled
MC97 S5 *disabled pci:0000:00:11.6
UAR1 S5 *disabled pnp:00:09
ECP1 S5 *disabled pnp:00:0a


4- This list represents the parts of your computer that the system monitors when it goes into suspension or hibernation. They might be "enabled" or "disabled".
You need to write down wich port(s) in the list you got in the terminal window are "enabled" (be carefull- you do not want to disable the usb port where the keyboard is connect AND your power button- you might end up without a way to wake your pc from suspend). It's a safe bet to disable only usb ports and not mess arround with other ports.

5- Now you need to disable the monitorization of those ports. This is done using the /etc/rc.local file, wich tells your pc the ports it should ignore during suspend/hibernate :
-left click the "Computer" icon on the desktop (or click Menu and Computer)
-left click file system
-right click /etc folder and select "open as administrator" then enter your root password
-scroll down to the rc.local file and click it and open the file in your text editor.
-type (or copy and paste) the following line of text before the line that reads "exit 0", replacing "USBX" for the port that you wrote down from step 4 (you may write several lines, one for every port you want you pc to ignore during suspension/hibernation):

echo USBX | sudo tee /proc/acpi/wakeup

-Save the file
-Ex: In my case the contents of the rc.local file ended up being:

echo USB2 | sudo tee /proc/acpi/wakeup
echo USB0 | sudo tee /proc/acpi/wakeup

exit 0


6- Restart your pc so the change takes effect.

7-If all goes well you can now suspend and hibernate your Linux Mint 14 box.

PS: If anything goes wrong, just delete the changes you did in the /etc/rc.local file, and restart your machine and you'll right where you started from (no suspend/hibernate).

I Hope this helps someone, if it does, please leave a message...

Re: Suspend/hibernate does'nt work in Mint 14 Mate

Posted: Mon Feb 11, 2013 11:29 am
by Jeratull
So if your system is messed up why not clean install formating everything and reinstalling even GRUB ?

By the way it will mess up your winxp bootloader if you uninstal grub so care about the install cd and restore options :)

Re: Suspend/hibernate doesn't work in Mint 14 Mate

Posted: Mon Feb 11, 2013 12:10 pm
by PauloPC
@ Jeratul- "So if your system is messed up why not clean install formating everything and reinstalling even GRUB ?"

I formated every linux partition in my system, I deleted everything and created /Home partiton, / and Swap partiions from scratch, I only left the ntfs partion untouched... I don't think this problem does anything to do with a partion that isn't even mounted when I try to suspend my pc. I almost never use my windows xp, but It might come in handy, and I have no cd to reinstall it... :(
Thanks for the advice, even so.

Re: [SOLVED] Suspend/hibernate doesn't work in Mint 14 Mate

Posted: Sun Feb 17, 2013 5:55 pm
by pgmer6809
SInce you seem to have some experience in these matters maybe you could help me.
I have the opposite problem.
I can hibernate or suspend but when the machine restores, the screen stays blank -- no video.
i.e. the pwr on light stays amber never goes to green. So it looks as if on restore my video output is never activated.
as such I don't know for sure what state the machine is in when I wake it up.
THe only way out of this is to hit the reset button and reboot.
Then it comes up fine.

Any ideas?
pgmer6809

SOLUTON-- in my cse I had to get rid of the USB hub I had plugged in. Prob need to make sure I have no USB sticks plugged in either.
pgmer6809

Re: [SOLVED] Suspend/hibernate doesn't work in Mint 14 Mate

Posted: Mon Feb 18, 2013 7:56 am
by PauloPC
@ pgmer6809 : At first it looked like there was some kind of problem with your video card driver, but taking your edit into consideration the problem probably is that the usb port where you have your hub connected needs to be "disabled".

Please note that the solution I posted does not disable the use of the usb ports, it disables only the monitorization of those ports during suspension/hibernation. This means you can have hubs, printers, keyboards, etc, connected to your pc and still be able to suspend/hibernate your pc.

Use cat /proc/acpi/wakeup to see wich usb ports are enabled and try disabling them (one at a time, if you do not want to disable the monitorization of all usb ports) using the tutorial I posted. That way you don't have to unplug anything to be able to suspend/hibernate your system.