suspend never wakes up

Questions about Grub, UEFI,the liveCD and the installer
Forum rules
Before you post please read this

suspend never wakes up

Postby registereduser on Sun Mar 17, 2013 2:36 am

I booted from live cd on USB, when the computer suspends (Acer extensa 4420) it never wakes back up, it tries to wake up but the monitor
never comes back on, and caps lock won't work (indicating system crash rather than simply a graphics issue)

being that it is a live-cd version and I don't yet know how to mount the sqashfs to edit anything, I'm unable to figure out how to fix it.

any tips or advice would be greatly appreciated.
registereduser
Level 2
Level 2
 
Posts: 66
Joined: Tue Aug 23, 2011 3:40 pm

Linux Mint is funded by ads and donations.
 

Re: suspend never wakes up

Postby austin.texas on Sun Mar 17, 2013 11:45 am

This is a known problem for Ubuntu and Mint with the ATI/Radeon graphics cards.
Personally, I am able to avoid hibernation by opening any program after booting, before it hibernates - after I switched to the 3.4 kernel. Previously I had to use the gnome inhibit applet.
I grew familiar with the Alt and SysRq (Print Screen) REISUB (Reboot Even If System Utterly Borked) procedure.

Here is a fix posted by someone:

hibernate fix for Mint

Finally after a long time of searching and messing around I have figure out a temporary work around solution until this bug gets patched in future kernel releases. Please see below:

Use this script only if you have been experiencing issues with resuming from standby/suspend in Ubuntu 12.04 LTS and the screen remains lit but black when you wake your machine.


Step 1:
Open up a terminal and create a scrip file as follows:
sudo gedit /etc/pm/sleep.d/20_custom-ehci_hcd
Step 2:
Copy the entire script below into the file you just created and save it:

#!/bin/sh
#inspired by http://art.ubuntuforums.org/showpost...0&postcount=19
#...and http://thecodecentral.com/2011/01/18...ot-working-bug
# tidied by tqzzaa :)
VERSION=1.1
DEV_LIST=/tmp/usb-dev-list
DRIVERS_DIR=/sys/bus/pci/drivers
DRIVERS="ehci xhci" # ehci_hcd, xhci_hcd
HEX="[[:xdigit:]]"
MAX_BIND_ATTEMPTS=2
BIND_WAIT=0.1

unbindDev() {
echo -n > $DEV_LIST 2>/dev/null
for driver in $DRIVERS; do
DDIR=$DRIVERS_DIR/${driver}_hcd
for dev in `ls $DDIR 2>/dev/null | egrep "^$HEX+:$HEX+:$HEX"`; do
echo -n "$dev" > $DDIR/unbind
echo "$driver $dev" >> $DEV_LIST
done
#for bus in $EHCI_BUSES; do
echo -n $bus > /sys/bus/pci/drivers/ehci_hcd/unbind
# done
done
}
bindDev() {
if [ -s $DEV_LIST ]; then
while read driver dev; do
DDIR=$DRIVERS_DIR/${driver}_hcd
#for bus in $EHCI_BUSES; do
echo -n $bus > /sys/bus/pci/drivers/ehci_hcd/bind
#done
while [ $((MAX_BIND_ATTEMPTS)) -gt 0 ]; do
echo -n "$dev" > $DDIR/bind
if [ ! -L "$DDIR/$dev" ]; then
sleep $BIND_WAIT
else
break
fi
MAX_BIND_ATTEMPTS=$((MAX_BIND_ATTEMPTS-1))
done
done < $DEV_LIST
fi
rm $DEV_LIST 2>/dev/null
chvt 1
chvt 7
}
EHCI_BUSES="0000:00:1a.0 0000:00:1d.0"
case "$1" in
hibernate|suspend)
unbindDev;;
resume|thaw)
bindDev;;
esac

Step 3:
Give the script run permissions by typing:

sudo chmod 755 /etc/pm/sleep.d/20_custom-ehci_hcd

This script should work or your money back guaranteed (Joking this is open source project so use at own risk :P ), as it forces the graphic card to reboot iself using a good old kick from chvt1 and chvt7 commands which simulate what I used to do manually using Ctrl + Alt + F1 and Ctrl + Alt + F7 to refresh the GUI.



Now although I have tested the latest kernel 3.4 ppa release and I must say it does run quite well and fixes some of the major bugs in Ubuntu 12.04 including of course the bug mentioned here regarding standby/suspend, it is still not a release version and I am still using kernel 3.2.0-24-generic release version.
Now since this version many of you probably noticed that the script I have posted before providing a quick fix for this bug no longer works. At least for me it no longer works. If for you it still works then don't touch it. It seems for me however some issues may have been attempted to fix regarding sleep and wake up driver issues. As a result the previous script no longer works, however I have written a simplified version which takes in consideration these fixes and this seems to work like a charm for me.

As previously...
Step 1: Open up a terminal and create a scrip file as follows:

Code:
sudo gedit /etc/pm/sleep.d/20_custom-ehci_hcd
Step 2: If and only if you have problems with your current script and your machine refuses to sleep or wake up on kernel 3.2.0-24-generic then replace the entire code with the following:

Code:
#!/bin/sh
# File: "/etc/pm/sleep.d/20_custom-ehci_hcd".
TMPLIST=/tmp/ehci-dev-list

case "${1}" in
hibernate|suspend)

;;
resume|thaw)

chvt 1
chvt 7
;;
esac

Step 3:
Give the script permission to run by typing the following in the terminal:
Code:
sudo chmod 755 /etc/pm/sleep.d/20_custom-ehci_hcd

[url]http://ubuntuforums.org/showthread.php?p=11926504
[/url]
Mint 17 Cinnamon (64 bit), Quad core AMD A8-3870 with Radeon HD Graphics 6550D, 8GB DDR3, Ralink RT2561/RT61 802.11g PCI
Microsoft-free environment since 1996

To help Linux Mint with a donation, please visit http://www.linuxmint.com/donors.php
User avatar
austin.texas
Level 9
Level 9
 
Posts: 2629
Joined: Tue Nov 17, 2009 3:57 pm
Location: at /home


Return to Installation & Boot

Who is online

Users browsing this forum: No registered users and 24 guests