summaryrefslogtreecommitdiff
path: root/src/journal-remote/journal-upload-journal.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/journal-remote/journal-upload-journal.c')
-rw-r--r--src/journal-remote/journal-upload-journal.c22
1 files changed, 8 insertions, 14 deletions
diff --git a/src/journal-remote/journal-upload-journal.c b/src/journal-remote/journal-upload-journal.c
index ac6eb58a9f..8ce8e1895e 100644
--- a/src/journal-remote/journal-upload-journal.c
+++ b/src/journal-remote/journal-upload-journal.c
@@ -244,24 +244,18 @@ static ssize_t write_entry(char *buf, size_t size, Uploader *u) {
}
static inline void check_update_watchdog(Uploader *u) {
- usec_t watchdog_usec;
- static usec_t before;
usec_t after;
usec_t elapsed_time;
- if (sd_watchdog_enabled(false, &watchdog_usec) < 0)
+ if (u->watchdog_usec <= 0)
return;
- if (u->reset_reference_timestamp) {
- before = now(CLOCK_MONOTONIC);
- u->reset_reference_timestamp = false;
- } else {
- after = now(CLOCK_MONOTONIC);
- elapsed_time = usec_sub(after, before);
- if (elapsed_time > watchdog_usec / 2) {
- log_debug("Update watchdog timer");
- sd_notify(false, "WATCHDOG=1");
- u->reset_reference_timestamp = true;
- }
+
+ after = now(CLOCK_MONOTONIC);
+ elapsed_time = usec_sub(after, u->watchdog_timestamp);
+ if (elapsed_time > u->watchdog_usec / 2) {
+ log_debug("Update watchdog timer");
+ sd_notify(false, "WATCHDOG=1");
+ u->watchdog_timestamp = after;
}
}