That way we have some resilience in the case of misconfiguration,
and future sleep methods do not have to reimplement the kernel methods.
---
 pm/module.d/kernel |   28 ++++------------------------
 pm/pm-functions.in |   24 ++++++++++++++++++++++++
 2 files changed, 28 insertions(+), 24 deletions(-)

diff --git a/pm/module.d/kernel b/pm/module.d/kernel
dissimilarity index 98%
index ee71278..157fc8a 100755
--- a/pm/module.d/kernel
+++ b/pm/module.d/kernel
@@ -1,24 +1,4 @@
-#!/bin/sh
-
-if [ -z "$SUSPEND_MODULE" ]; then
-       if grep -q mem /sys/power/state; then
-               SUSPEND_MODULE="kernel"
-               do_suspend() { echo -n "mem" >/sys/power/state; }
-       elif [ -c /dev/pmu ] && pm-pmu --check; then
-               SUSPEND_MODULE="kernel"
-               do_suspend() { pm-pmu --suspend; }
-       fi
-fi
-
-if [ -z "$HIBERNATE_MODULE" ] && \
-       [ -f /sys/power/disk ] && \
-       grep -q disk /sys/power/state; then
-       HIBERNATE_MODULE="kernel"
-       do_hibernate()
-       {
-               [ -n "${HIBERNATE_MODE}" ] && \
-               grep -qw "${HIBERNATE_MODE}" /sys/power/disk && \
-               echo -n "${HIBERNATE_MODE}" > /sys/power/disk
-               echo -n "disk" > /sys/power/state
-       }
-fi
+#!/bin/sh
+
+# this file is a stub -- pm-functions will always fall back to kernel methods
+# if nothing else is available.
\ No newline at end of file
diff --git a/pm/pm-functions.in b/pm/pm-functions.in
index 54c5fca..3690cc9 100644
--- a/pm/pm-functions.in
+++ b/pm/pm-functions.in
@@ -248,3 +248,27 @@ 
SLEEP_FUNCTIONS="${PM_UTILS_LIBDIR}/module.d/${SLEEP_MODULE}"
 
 . "${SLEEP_FUNCTIONS}"
 
+# always fall back to kernel methods if nothing else was declared
+
+if [ -z "$SUSPEND_MODULE" ]; then
+       if grep -q mem /sys/power/state; then
+               SUSPEND_MODULE="kernel"
+               do_suspend() { echo -n "mem" >/sys/power/state; }
+       elif [ -c /dev/pmu ] && pm-pmu --check; then
+               SUSPEND_MODULE="kernel"
+               do_suspend() { pm-pmu --suspend; }
+       fi
+fi
+
+if [ -z "$HIBERNATE_MODULE" ] && \
+       [ -f /sys/power/disk ] && \
+       grep -q disk /sys/power/state; then
+       HIBERNATE_MODULE="kernel"
+       do_hibernate()
+       {
+               [ -n "${HIBERNATE_MODE}" ] && \
+               grep -qw "${HIBERNATE_MODE}" /sys/power/disk && \
+               echo -n "${HIBERNATE_MODE}" > /sys/power/disk
+               echo -n "disk" > /sys/power/state
+       }
+fi
-- 
1.5.6.5

_______________________________________________
Pm-utils mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/pm-utils

Reply via email to