diff options
author | Lennart Poettering <lennart@poettering.net> | 2014-03-06 02:19:06 +0100 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2014-03-06 04:00:42 +0100 |
commit | aa62a8936f5983770e90b791083d55107659f7a1 (patch) | |
tree | 6a933d09bd28e781c608b602f2281dec3f69a8a4 /src/sleep/sleep.c | |
parent | 6a3f892a23db71544d0439355f96c44350dafa8f (diff) |
util: add timeout to generator execution
Diffstat (limited to 'src/sleep/sleep.c')
-rw-r--r-- | src/sleep/sleep.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/sleep/sleep.c b/src/sleep/sleep.c index 8da050cd7e..94bcb2944a 100644 --- a/src/sleep/sleep.c +++ b/src/sleep/sleep.c @@ -25,14 +25,15 @@ #include <string.h> #include <getopt.h> -#include "systemd/sd-id128.h" -#include "systemd/sd-messages.h" +#include "sd-id128.h" +#include "sd-messages.h" #include "log.h" #include "util.h" #include "strv.h" #include "fileio.h" #include "build.h" #include "sleep-config.h" +#include "def.h" static char* arg_verb = NULL; @@ -41,9 +42,12 @@ static int write_mode(char **modes) { char **mode; STRV_FOREACH(mode, modes) { - int k = write_string_file("/sys/power/disk", *mode); + int k; + + k = write_string_file("/sys/power/disk", *mode); if (k == 0) return 0; + log_debug("Failed to write '%s' to /sys/power/disk: %s", *mode, strerror(-k)); if (r == 0) @@ -106,7 +110,7 @@ static int execute(char **modes, char **states) { arguments[1] = (char*) "pre"; arguments[2] = arg_verb; arguments[3] = NULL; - execute_directory(SYSTEM_SLEEP_PATH, NULL, arguments); + execute_directory(SYSTEM_SLEEP_PATH, NULL, DEFAULT_TIMEOUT_USEC, arguments); log_struct(LOG_INFO, MESSAGE_ID(SD_MESSAGE_SLEEP_START), @@ -125,7 +129,7 @@ static int execute(char **modes, char **states) { NULL); arguments[1] = (char*) "post"; - execute_directory(SYSTEM_SLEEP_PATH, NULL, arguments); + execute_directory(SYSTEM_SLEEP_PATH, NULL, DEFAULT_TIMEOUT_USEC, arguments); return r; } |