From fa94c34b083b5b4019975624453e53d0cbad2a5d Mon Sep 17 00:00:00 2001 From: Tom Gundersen Date: Thu, 24 Jul 2014 18:53:01 +0200 Subject: libsystemd-network: use CLOCK_BOOTTIME instead of CLOCK_MONOTONIC where possible The timeouts in the networking library (DHCP lease timeouts and similar) should not be affected by suspend. In the cases where CLOCK_BOOTTIME is not implemented, it is still safe to fallback to CLOCK_MONOTONIC, as the consumers of the library (i.e., networkd) _should_ renew the leases when coming out of suspend. --- src/libsystemd-network/sd-icmp6-nd.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/libsystemd-network/sd-icmp6-nd.c') diff --git a/src/libsystemd-network/sd-icmp6-nd.c b/src/libsystemd-network/sd-icmp6-nd.c index 80915c34d6..b264e793ee 100644 --- a/src/libsystemd-network/sd-icmp6-nd.c +++ b/src/libsystemd-network/sd-icmp6-nd.c @@ -255,7 +255,7 @@ static int icmp6_router_solicitation_timeout(sd_event_source *s, uint64_t usec, nd->nd_sent++; - r = sd_event_now(nd->event, CLOCK_MONOTONIC, &time_now); + r = sd_event_now(nd->event, clock_boottime_or_monotonic(), &time_now); if (r < 0) { icmp6_nd_notify(nd, r); return 0; @@ -263,7 +263,7 @@ static int icmp6_router_solicitation_timeout(sd_event_source *s, uint64_t usec, next_timeout = time_now + ICMP6_ROUTER_SOLICITATION_INTERVAL; - r = sd_event_add_time(nd->event, &nd->timeout, CLOCK_MONOTONIC, + r = sd_event_add_time(nd->event, &nd->timeout, clock_boottime_or_monotonic(), next_timeout, 0, icmp6_router_solicitation_timeout, nd); if (r < 0) { @@ -322,7 +322,7 @@ int sd_icmp6_router_solicitation_start(sd_icmp6_nd *nd) { if (r < 0) goto error; - r = sd_event_add_time(nd->event, &nd->timeout, CLOCK_MONOTONIC, + r = sd_event_add_time(nd->event, &nd->timeout, clock_boottime_or_monotonic(), 0, 0, icmp6_router_solicitation_timeout, nd); if (r < 0) goto error; -- cgit v1.2.3-54-g00ecf