resume: merge uswsusp module into resume
uswsusp almost completely duplicates resume; merge them. Signed-off-by: Andrey Borzenkov <arvidjaar@gmail.com>master
parent
0e08f1de8d
commit
856285aa90
|
@ -2,6 +2,16 @@
|
||||||
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
|
# Optional uswsusp support
|
||||||
|
for bin in /usr/sbin/resume /usr/lib/suspend/resume
|
||||||
|
do
|
||||||
|
[[ -x "${bin}" ]] && {
|
||||||
|
inst "${bin}" /usr/sbin/resume
|
||||||
|
[[ -f /etc/suspend.conf ]] && inst /etc/suspend.conf
|
||||||
|
break
|
||||||
|
}
|
||||||
|
done
|
||||||
|
|
||||||
inst_hook cmdline 10 "$moddir/parse-resume.sh"
|
inst_hook cmdline 10 "$moddir/parse-resume.sh"
|
||||||
inst_hook pre-udev 30 "$moddir/resume-genrules.sh"
|
inst_hook pre-udev 30 "$moddir/resume-genrules.sh"
|
||||||
inst_hook mount 10 "$moddir/resume.sh"
|
inst_hook mount 10 "$moddir/resume.sh"
|
||||||
|
|
|
@ -16,3 +16,9 @@ case "$resume" in
|
||||||
UUID=*) \
|
UUID=*) \
|
||||||
resume="/dev/disk/by-uuid/${resume#UUID=}" ;;
|
resume="/dev/disk/by-uuid/${resume#UUID=}" ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
if splash=$(getarg splash=); then
|
||||||
|
export splash
|
||||||
|
else
|
||||||
|
unset splash
|
||||||
|
fi
|
||||||
|
|
|
@ -1,6 +1,15 @@
|
||||||
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
|
case "$splash" in
|
||||||
|
quiet )
|
||||||
|
a_splash="-P splash=y"
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
a_splash="-P splash=n"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
if [ -n "$resume" ]; then
|
if [ -n "$resume" ]; then
|
||||||
{
|
{
|
||||||
printf "KERNEL==\"%s\", ACTION==\"add|change\", SYMLINK+=\"/dev/resume\"\n" \
|
printf "KERNEL==\"%s\", ACTION==\"add|change\", SYMLINK+=\"/dev/resume\"\n" \
|
||||||
|
@ -10,6 +19,12 @@ if [ -n "$resume" ]; then
|
||||||
} >> /dev/.udev/rules.d/99-resume-link.rules
|
} >> /dev/.udev/rules.d/99-resume-link.rules
|
||||||
|
|
||||||
{
|
{
|
||||||
|
if [ -x /usr/sbin/resume ]; then
|
||||||
|
printf "KERNEL==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/usr/sbin/resume %s '%s'\"\n" \
|
||||||
|
${resume#/dev/} "$a_splash" "$resume";
|
||||||
|
printf "SYMLINK==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/usr/sbin/resume %s '%s'\"\n" \
|
||||||
|
${resume#/dev/} "$a_splash" "$resume";
|
||||||
|
fi
|
||||||
printf "KERNEL==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/bin/sh -c 'echo %%M:%%m > /sys/power/resume'\"\n" \
|
printf "KERNEL==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/bin/sh -c 'echo %%M:%%m > /sys/power/resume'\"\n" \
|
||||||
${resume#/dev/};
|
${resume#/dev/};
|
||||||
printf "SYMLINK==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/bin/sh -c 'echo %%M:%%m > /sys/power/resume'\"\n" \
|
printf "SYMLINK==\"%s\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/bin/sh -c 'echo %%M:%%m > /sys/power/resume'\"\n" \
|
||||||
|
@ -21,8 +36,17 @@ if [ -n "$resume" ]; then
|
||||||
|
|
||||||
echo '[ -e /dev/resume ]' > /initqueue-finished/resume.sh
|
echo '[ -e /dev/resume ]' > /initqueue-finished/resume.sh
|
||||||
|
|
||||||
|
{
|
||||||
|
printf '[ -e /dev/resume ] || '
|
||||||
|
printf 'warn "resume device "%s" not found"\n' "$resume"
|
||||||
|
} >> /emergency/00-resume.sh
|
||||||
|
|
||||||
|
|
||||||
elif ! getarg noresume; then
|
elif ! getarg noresume; then
|
||||||
{
|
{
|
||||||
|
if [ -x /usr/sbin/resume ]; then
|
||||||
|
printf "SUBSYSTEM==\"block\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\", RUN+=\"/usr/sbin/resume %s '\$tempnode'\"\n" "$a_splash"
|
||||||
|
fi
|
||||||
echo "SUBSYSTEM==\"block\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\"," \
|
echo "SUBSYSTEM==\"block\", ACTION==\"add|change\", ENV{ID_FS_TYPE}==\"suspend|swsuspend|swsupend\"," \
|
||||||
" RUN+=\"/bin/sh -c 'echo %M:%m > /sys/power/resume'\"";
|
" RUN+=\"/bin/sh -c 'echo %M:%m > /sys/power/resume'\"";
|
||||||
} >> /etc/udev/rules.d/99-resume.rules
|
} >> /etc/udev/rules.d/99-resume.rules
|
||||||
|
|
|
@ -3,6 +3,17 @@
|
||||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
|
||||||
[ -s /.resume -a -b "$resume" ] && {
|
[ -s /.resume -a -b "$resume" ] && {
|
||||||
|
# First try user level resume; it offers splash etc
|
||||||
|
case "$splash" in
|
||||||
|
quiet )
|
||||||
|
a_splash="-P splash=y"
|
||||||
|
;;
|
||||||
|
* )
|
||||||
|
a_splash="-P splash=n"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
[ -x /usr/sbin/resume ] && /usr/sbin/resume $a_splash "$resume"
|
||||||
|
|
||||||
# parsing the output of ls is Bad, but until there is a better way...
|
# parsing the output of ls is Bad, but until there is a better way...
|
||||||
ls -lH "$resume" | (
|
ls -lH "$resume" | (
|
||||||
read x x x x maj min x;
|
read x x x x maj min x;
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
|
||||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
|
||||||
|
|
||||||
[ -x /usr/sbin/resume ] || [ -x /usr/lib/suspend/resume ]
|
|
|
@ -1,14 +0,0 @@
|
||||||
#!/bin/bash
|
|
||||||
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
|
||||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
|
||||||
|
|
||||||
for bin in /usr/sbin/resume /usr/lib/suspend/resume
|
|
||||||
do
|
|
||||||
[ -x "${bin}" ] && break
|
|
||||||
done
|
|
||||||
|
|
||||||
inst "${bin}" /usr/sbin/resume
|
|
||||||
[ -f /etc/suspend.conf ] && inst /etc/suspend.conf
|
|
||||||
|
|
||||||
inst_hook cmdline 10 "$moddir/parse-uswsusp.sh"
|
|
||||||
inst_hook mount 10 "$moddir/resume-uswsusp.sh"
|
|
|
@ -1,23 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
|
||||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
|
||||||
|
|
||||||
if resume=$(getarg resume=) && ! getarg noresume; then
|
|
||||||
export resume
|
|
||||||
else
|
|
||||||
unset resume
|
|
||||||
fi
|
|
||||||
|
|
||||||
case "$resume" in
|
|
||||||
LABEL=*) \
|
|
||||||
resume="$(echo $resume | sed 's,/,\\x2f,g')"
|
|
||||||
resume="/dev/disk/by-label/${resume#LABEL=}" ;;
|
|
||||||
UUID=*) \
|
|
||||||
resume="/dev/disk/by-uuid/${resume#UUID=}" ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
if splash=$(getarg rd.splash= splash=); then
|
|
||||||
export splash
|
|
||||||
else
|
|
||||||
unset splash
|
|
||||||
fi
|
|
|
@ -1,16 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
|
||||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
|
||||||
|
|
||||||
case "$splash" in
|
|
||||||
quiet )
|
|
||||||
a_splash="-P splash=y"
|
|
||||||
;;
|
|
||||||
* )
|
|
||||||
a_splash="-P splash=n"
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
if [ -n "$resume" ]; then
|
|
||||||
/usr/sbin/resume $a_splash "$resume"
|
|
||||||
fi
|
|
Loading…
Reference in New Issue