https://www.thinkwiki.org/w/api.php?action=feedcontributions&user=Tlbdk&feedformat=atomThinkWiki - User contributions [en]2024-03-28T15:53:14ZUser contributionsMediaWiki 1.31.12https://www.thinkwiki.org/w/index.php?title=Problems_with_ACPI_suspend-to-ram&diff=29715Problems with ACPI suspend-to-ram2007-05-11T13:41:27Z<p>Tlbdk: /* Troubles on resume */</p>
<hr />
<div>The following glitches may or may not occur in relation to suspending to RAM:<br />
<br />
==Troubles on suspend==<br />
;Permissions:If your suspend is failing, and a {{cmdroot|tail /var/log/acpid}} shows "Permission denied" errors, be sure that your new ACPI event and action scripts have the appropriate permissions.<br />
<br />
;Write error:If {{cmdroot|echo mem > /sys/power/state}} shows "write error: Operation not permitted", verify that CONFIG_HOTPLUG_CPU option is enabled in the kernel. [[Software_Suspend_2|Suspend2]] automatically selects this option. <br />
<br />
;Broken sysfs interface:You may experience problems when using {{cmdroot|echo standby > /sys/power/state}} or {{cmdroot|echo mem > /sys/power/state}} (machine goes to sleep and wakes up immediately). This can be avoided by using {{cmdroot|echo -n 3 >/proc/acpi/sleep}} to get it to sleep. This can be also happen if hotplug daemon is still running.<br />
<br />
;Hangs on "switching to UP code":You may be using a [[How to make use of Dynamic Frequency Scaling|frequency scaling governor]] such as "conservative" or "ondemand", which sometimes have problems with suspending. Switching to a governor such as "powersave" or "performance" before suspending may solve this problem.<br />
<br />
;MySQL daemon running:If you're running MySQL, sleep may also not work, so stop MySQL first, then sleep. Remember to restart MySQL when you wakeup.<br />
<br />
;LCD backlight remains on during sleep:When your system is equiped with a Radeon Mobility graphic controller your [[Problem with LCD backlight remaining on during ACPI sleep|LCD backlight may not turn off automatically]]. Use [[radeontool]] to switch off your backlight prior suspend in your sleep action script.<br />
<br />
;High power drain during sleep:Also, you might want to take note of the [[Problem with high power drain in ACPI sleep]].<br />
<br />
;Built-in MMC reader:If you have an MMC reader, and the computer hangs when attempting suspend then remove sdhci, mmc_block, and mmc_core modules before suspending.<br />
<br />
;Could not power down device <NULL>: error -22:If you have the acpi_cpufreq kernel module loaded, this prevents suspension.<br />
<br />
==Troubles on resume==<br />
;Blank display on resume:<br />
:When resuming from a suspend-to-ram the display might remain black (on {{X60}}) or might only show the pre-suspend output (the system is still rebootable via {{key|ctrl}}{{key|alt}}{{key|del}}). See [[Problem with display remaining black after resume]] for solutions. See also '''System hang on resume''' on this page - which may be potentially mismatched with this one.<br />
<br />
;No mouse cursor on resume:<br />
:When resuming from a suspend-to-ram your X cursor might be invisible(on {{X40}}) when using {{path|/sys/power/state}} directly to suspend, they way to fix this is to rerun the post bios code after returning for suspending.<br />
:{{cmdroot|FGCONSOLE<nowiki>=</nowiki>`fgconsole\`}}<br />
:{{cmdroot|chvt 1 && echo -n mem >/sys/power/state}}<br />
:{{cmdroot|vbetool post && chvt 7 && chvt $FGCONSOLE}}<br />
<br />
;Garbage on text consoles on resume:When resuming from suspend-to-ram the text console displays may show garbage instead of actual text. The machine is otherwise still responsive and X displays fine. If all of this is true, then adding the kernel option {{bootparm|acpi_sleep|s3_bios,s3_mode}} in your menu.lst or lilo.conf may solve the problem.<br />
<br />
;Broken hardware support after resume:<br />
:*The '''serial port''' of the port replicator might not work after resume.<br />
:*The '''parallel port''' might not work after resume. A possible fix is to unload and reload the parallel port drivers: {{cmdroot|rmmod lp parport_pc parport; modprobe lp}}.<br />
:*Problems with the '''CD-RW/DVD drive''' after wake up from ram have been experienced.<br />
:*There is a known Problem regarding '''battery info''' after suspend to RAM. A [http://www.ussg.iu.edu/hypermail/linux/kernel/0511.0/2429.html small patch] exists for kernels 2.6.14/2.6.15.<br />
:*On {{X20}} and {{X21}} (and possibly other) models, the '''sleep LED''' is not reset properly on resume and will keep blinking. If you have the [[ibm-acpi]] kernel module loaded with the {{bootparm|ibm-acpi.experimental|1}} option, you can switch it off on resume by appending the following line to your suspend script: {{cmdroot|echo 7 off > /proc/acpi/ibm/led}}<br />
<br />
;Crash on resume:<br />
:*When using '''older ATI proprietary drivers''' a crash on resume can be solved by using [http://freshmeat.net/projects/vbetool/ vbetool]. See the example suspend script [[Problem with display remaining black after resume#Solution for ThinkPads with Intel I830 Chipset]]. This is no longer necessary with recent revisions of the ATI proprietary driver.<br />
:*A crash could also be caused by having '''apic support''' enabled in the kernel config. Try disabling it (in the "Processor type and features" section).<br />
:*On machines with Savage chipsets, the '''savagefb framebuffer driver''' might crash the machine on resume. Make sure it is disabled in your kernel config and use the standard vesafb driver instead.<br />
:*SATA-based laptops utilize the '''libata layer for disk access''' which does not have fully-working power-management support before Linux kernel 2.6.16 (ata_piix) and 2.6.19 (ahci). Suspend to RAM crashes these machines on resume. See the [[Problems with SATA and Linux#Hang on resume from suspend to RAM|relevant section]] on the [[Problems with SATA and Linux]] page.<br />
:*Using [[HDAPS]] as a module causes a crash on resume with the Linux kernel 2.6.19 (possibly even earlier versions). This was observed on a {{X41}}. Try unloading the module before suspending.<br />
<br />
;System hang on resume:<br />
:When system resumes it hangs right after restarting tasks. Strange thing is, that you may be even able to restart your ThinkPad using {{key|ctrl}}{{key|alt}}{{key|del}}, but if you try to blindly exec a command, it will not work, (eg. touch FILE) so it's not only the problem of videocard. This may be fixed by passing {{bootparm|ec_intr|0}} on kernel cmdline. Affected models: {{T21}} (at least [[2647-8AG]]).<br />
:'''Note:''' ''this is resolved in kernel 2.6.20, there is no need to pass the {{bootparm|ec_intr|0}} bootparam anymore (moreover, you are discouraged to use it) See [http://bugzilla.kernel.org/show_bug.cgi?id=6749 revelant kernel bug report]''<br />
<br />
;Shutdown on resume:<br />
:If your system immediately begins to shut down right after resume, make sure you don't have acpid running with the power button tied to shutdown. The system is simply sensing the power button event and shutting down. This issue has been reported as a bug against the kernel ACPI subsystem, refer to [http://bugzilla.kernel.org/show_bug.cgi?id=6612 kernel.org bugzilla bug #6612].<br />
<br />
;Immediate suspend on resume:<br />
:When running GNOME, sometimes gnome-power-manager will put the system back into suspend immediately after resuming. This is caused by a known bug in HAL that causes some ACPI events to be reported incorrectly after a suspend-to-ram. A simple workaround can be found [http://live.gnome.org/GnomePowerManager/Faq?action=recall&rev=28#head-b8b1280115b0a51c2cc27b13a57121130ebf36cb here].<br />
:Note that suspend being triggered by unrelated ACPI events such as disconnecting the AC adapter may also be fixed by the above method.<br />
<br />
;Power Off when suspended laptop is docked<br />
:When T60p is suspended, docking laptop into Advanced Dock immediately turns off laptop and crescent moon sleep indicator LED. Pressing power button initiates cold boot. Also reported by multiple people on thinkpads.com.<br />
<br />
;SectorIdNotFound disk errors when laptop is resumed<br />
:The errors look like this:<br />
: Oct 14 17:35:02 cacharro kernel: hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }<br />
: Oct 14 17:35:02 cacharro kernel: hda: dma_intr: error=0x10 { SectorIdNotFound }, LBAsect=115896900, sector=115896900<br />
: Oct 14 17:35:02 cacharro kernel: ide: failed opcode was: unknown<br />
<br />
:This happens when you have [[Hidden Protected Area]] (HPA) enabled on the hard drive. There is a [http://bugzilla.kernel.org/show_bug.cgi?id=6840 kernel bug report with an unfinished patch] to fix this. This is not fixed as of kernel 2.16.18.</div>Tlbdk