diff -ur initrd-tools-0.1.74ubuntu3.old/init initrd-tools-0.1.74ubuntu3/init --- initrd-tools-0.1.74ubuntu3.old/init 2004-10-27 21:43:44 +0100 +++ initrd-tools-0.1.74ubuntu3/init 2004-12-07 00:06:00 +0000 @@ -309,14 +309,10 @@ fi } -load_swsusp() { +do_swsusp() { local device major minor sysfs= local resume="$resume" - if ! modprobe -n swsusp > /dev/null 2>&1; then - return - fi - if mount -nt sysfs sysfs sys > /dev/null 2>&1; then sysfs=yes fi @@ -324,12 +320,11 @@ if [ -n "$resume" ]; then device=${resume#*=} if get_sysfs_device "$device"; then - resume=resume=$(printf '%02x%02x\n' $major $minor) + echo -n "$major:$minor" >/sys/power/resume else echo Failed to decode swap device "$device" >&2 fi fi - modprobe -k swsusp ${resume:+"$resume"} ${noresume:+"$noresume"} if [ $sysfs ]; then umount -n sys @@ -394,7 +389,7 @@ ROOT=${CMDROOT:-$ROOT} if [ -n "$resume$noresume" ]; then - load_swsusp + do_swsusp fi umount -n devfs