Difference between revisions of "TuxOnIce"
(sorry, gotta learn wiki a little bit more) |
|||
Line 51: | Line 51: | ||
*{{Gentoo}}: emerge hibernate-script<br /> | *{{Gentoo}}: emerge hibernate-script<br /> | ||
*{{Fedora}}: kernel and hibernate RPMs are available at http://mhensler.de/swsusp/<br /> | *{{Fedora}}: kernel and hibernate RPMs are available at http://mhensler.de/swsusp/<br /> | ||
− | * | + | *PLD: poldek -iv hibernate |
*Other: check the home page for packages (deb, i386 rpm, tgz, and source rpm) from http://www.suspend2.net | *Other: check the home page for packages (deb, i386 rpm, tgz, and source rpm) from http://www.suspend2.net | ||
Revision as of 11:43, 21 June 2006
Software Suspend 2 - swsusp2Software Suspend 2, sometimes also called "swsusp2" and "suspend2", is an implementation of suspend-to-disk functionality in the form of a Linux kernel patch and several userspace utilities. It is an alternative to both the BIOS-driven hibernation feature found on most ThinkPad models, and the swsusp "software suspend" functionality built into recent Linux kernels. |
Features
Compared to the alternatives, Software Suspend 2 has some unique features:
- The ability to compress the memory image as it is written to disk, thereby reducing suspend and resume times.
- Saving the memory image into a swap file, a swap partition or normal a file on any filesystem.
- Cancelling a suspend in progress
- Control over amount of RAM written to disk -- can (optionally) discard cached disk blocks to reduce suspend and resume times
- Textual and graphical UI (optional)
- Improved reliability under some circumstances -- if the alternatives don't work, try this one!
Since it is implemented purely in software, Software Suspend 2 is in principle machine-independent and should work on all modern ThinkPad models. However, in some cases problematic drivers need to be unloaded before suspension. This is handled by the hibernate script (see below).
Availability / Project Homepage
Model-specific Status
- ThinkPad T43 and T42: works
- ThinkPad T21: works; need to unload the sound module (snd-cs46xx) on suspend. May want to enable UseDummyXServer if running X.
- ThinkPad X41 Tablet: works; requires SATA resume patch and the SATA drivers compiled as built-in or in initrd (see Problems with SATA and Linux) and a hibernate.conf fix (see Installing Fedora Core 4 on a ThinkPad X41 Tablet)
- ThinkPad X22: works (see Installing Ubuntu (Breezy) on a ThinkPad X22)
- ThinkPad G41: works (see Installing Debian on a ThinkPad G41)
Installation Instructions
The project home page has a detailed HOWTO and FAQ. The following are just a few highlights.
Patching mkinitrd
If your systems uses an initrd file (most do), you'll need to patch or replace your initrd-creation script.
- Fedora 4: in /sbin/mkinitrd, find this line:
echo "echo Mounted /proc filesystem" >> $RCFILE
and add the following immediately afterwards:
echo "echo > /proc/suspend2/do_resume" >>$RCFILE
- Fedora 5: in /sbin/mkinitrd, find this line:
mount -t proc /proc /proc
and add the following immediately afterwards:
echo > /proc/suspend2/do_resume
- Debian: copy swsusp-initrd.sh script to your /etc/mkinitrd/scripts directory before creating initrd image.
Make sure you regenerate your initrd file (using mkinitrd or by reinstalling the kernel) after patching mkinitrd.
Hibernate script
Software Suspend 2 works best with the hibernate script (available from the project home page), which takes care of auxiliary tasks needed on many systems (e.g., unloading problematic modules and restoring video modes).
Availability
- Gentoo: emerge hibernate-script
- Fedora: kernel and hibernate RPMs are available at http://mhensler.de/swsusp/
- PLD: poldek -iv hibernate
- Other: check the home page for packages (deb, i386 rpm, tgz, and source rpm) from http://www.suspend2.net
Configuration tips
RediSafe-like functionality
The hibernate functionality on some ThinkPad BIOSes offers the useful "RediSafe" feature, which suspends to both RAM and disk. This way you get quick resumes (directly from RAM), plus the safey of suspend-to-disk in case the battery runs out.
Software Suspend 2 provides this feature too; simply add the following to /etc/hibernate/hibernate.conf:
PowerdownMethod 3