From d6c399b1dd38d6f85fee1f255e7c49b7cdc53859 Mon Sep 17 00:00:00 2001 From: Lubomir Rintel Date: Tue, 15 Mar 2016 12:53:19 +0100 Subject: systemd: fall back to CLOCK_MONOTONIC https://github.com/systemd/systemd/pull/2843 --- src/systemd/src/basic/time-util.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/systemd/src/basic/time-util.c b/src/systemd/src/basic/time-util.c index 56ff48a6f0..5b2b2180d8 100644 --- a/src/systemd/src/basic/time-util.c +++ b/src/systemd/src/basic/time-util.c @@ -49,12 +49,15 @@ static clockid_t map_clock_id(clockid_t c) { /* Some more exotic archs (s390, ppc, …) lack the "ALARM" flavour of the clocks. Thus, clock_gettime() will * fail for them. Since they are essentially the same as their non-ALARM pendants (their only difference is * when timers are set on them), let's just map them accordingly. This way, we can get the correct time even on - * those archs. */ + * those archs. + * + * Also, older kernels don't support CLOCK_BOOTTIME: fall back to CLOCK_MONOTONIC. */ switch (c) { + case CLOCK_BOOTTIME: case CLOCK_BOOTTIME_ALARM: - return CLOCK_BOOTTIME; + return clock_boottime_or_monotonic (); case CLOCK_REALTIME_ALARM: return CLOCK_REALTIME; -- cgit v1.2.1