diff -urNp genkernel-3.4.9_pre9.org/generic/initrd.scripts genkernel-3.4.9_pre9/generic/initrd.scripts --- genkernel-3.4.9_pre9.org/generic/initrd.scripts 2007-11-14 01:09:21.000000000 +0200 +++ genkernel-3.4.9_pre9/generic/initrd.scripts 2007-11-16 08:40:29.000000000 +0200 @@ -857,6 +857,19 @@ setup_unionfs() { fi } +suspend_resume() { + which resume > /dev/null 2>&1 || return + local args + local features="$(resume --version | grep FEATURES)" + local device="$(grep "resume=" /proc/cmdline > /dev/null && cat /proc/cmdline | sed 's/.*resume=//' | sed 's/ .*//')" + [ -n "${device}" ] && args="${args} --resume_device=\"${device}\"" + if ! grep suspend_noui /proc/cmdline > /dev/null 2>&1; then + echo "${features}" | grep "fbsplash" > /dev/null && grep "splash=" /proc/cmdline > /dev/null && args="${args} --parameter=\"splash=y\"" + fi + [ -c /dev/snapshot ] || mknod /dev/snapshot c 10 231 + eval resume ${args} +} + tuxonice_resume() { [ -d /proc/suspend2 -o -d /sys/power/suspend2 -o -d /sys/power/tuxonice ] || return diff -urNp genkernel-3.4.9_pre9.org/generic/linuxrc genkernel-3.4.9_pre9/generic/linuxrc --- genkernel-3.4.9_pre9.org/generic/linuxrc 2007-11-14 01:09:21.000000000 +0200 +++ genkernel-3.4.9_pre9/generic/linuxrc 2007-11-16 08:39:28.000000000 +0200 @@ -256,6 +256,7 @@ fi # Run debug shell if requested rundebugshell +suspend_resume tuxonice_resume if [ "${CDROOT}" -eq '1' ]