X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fshared%2Fwatchdog.c;h=7d188d98e821892a1ef09ef9d55517a129551a61;hb=da927ba997d68401563b927f92e6e40e021a8e5c;hp=13265e76929d0d8b8e80353fb59c2baa5e048b22;hpb=f274ece0f76b5709408821e317e87aef76123db6;p=elogind.git diff --git a/src/shared/watchdog.c b/src/shared/watchdog.c index 13265e769..7d188d98e 100644 --- a/src/shared/watchdog.c +++ b/src/shared/watchdog.c @@ -29,7 +29,7 @@ #include "log.h" static int watchdog_fd = -1; -static usec_t watchdog_timeout = (usec_t) -1; +static usec_t watchdog_timeout = USEC_INFINITY; static int update_timeout(void) { int r; @@ -37,7 +37,7 @@ static int update_timeout(void) { if (watchdog_fd < 0) return 0; - if (watchdog_timeout == (usec_t) -1) + if (watchdog_timeout == USEC_INFINITY) return 0; else if (watchdog_timeout == 0) { int flags; @@ -60,7 +60,7 @@ static int update_timeout(void) { } watchdog_timeout = (usec_t) sec * USEC_PER_SEC; - log_info("Set hardware watchdog to %s.", format_timespan(buf, sizeof(buf), watchdog_timeout)); + log_info("Set hardware watchdog to %s.", format_timespan(buf, sizeof(buf), watchdog_timeout, 0)); flags = WDIOS_ENABLECARD; r = ioctl(watchdog_fd, WDIOC_SETOPTIONS, &flags); @@ -104,7 +104,7 @@ int watchdog_set_timeout(usec_t *usec) { /* If we didn't open the watchdog yet and didn't get any * explicit timeout value set, don't do anything */ - if (watchdog_fd < 0 && watchdog_timeout == (usec_t) -1) + if (watchdog_fd < 0 && watchdog_timeout == USEC_INFINITY) return 0; if (watchdog_fd < 0) @@ -164,6 +164,5 @@ void watchdog_close(bool disarm) { } } - close_nointr_nofail(watchdog_fd); - watchdog_fd = -1; + watchdog_fd = safe_close(watchdog_fd); }