Zbigniew Jędrzejewski-Szmek 43ff24
From 1e673f08f3299f4704e26cb983f046091881dc01 Mon Sep 17 00:00:00 2001
Zbigniew Jędrzejewski-Szmek 43ff24
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Zbigniew Jędrzejewski-Szmek 43ff24
Date: Tue, 15 Jul 2014 09:52:17 -0400
Zbigniew Jędrzejewski-Szmek 43ff24
Subject: [PATCH] timesyncd: only listen to clock changes when connected
Zbigniew Jędrzejewski-Szmek 43ff24
Zbigniew Jędrzejewski-Szmek 43ff24
This reverts previous commit and applies a different fix.
Zbigniew Jędrzejewski-Szmek 43ff24
Zbigniew Jędrzejewski-Szmek 43ff24
manager_clock_watch() callback calls manager_send_request() to kick
Zbigniew Jędrzejewski-Szmek 43ff24
off a resync. We can only do that when we're actually connected to
Zbigniew Jędrzejewski-Szmek 43ff24
something. It is not useful to setup the callback from manager_new().
Zbigniew Jędrzejewski-Szmek 43ff24
Zbigniew Jędrzejewski-Szmek 43ff24
Now the callback will be dropped in manager_connect() and requested
Zbigniew Jędrzejewski-Szmek 43ff24
in manager_begin().
Zbigniew Jędrzejewski-Szmek 43ff24
Zbigniew Jędrzejewski-Szmek 43ff24
https://bugs.freedesktop.org/show_bug.cgi?id=80932
Zbigniew Jędrzejewski-Szmek 43ff24
(cherry picked from commit c566ee3253132cc2ec37ed04c5bccbadf8e60c58)
Zbigniew Jędrzejewski-Szmek 43ff24
---
Zbigniew Jędrzejewski-Szmek 43ff24
 src/timesync/timesyncd.c | 7 -------
Zbigniew Jędrzejewski-Szmek 43ff24
 1 file changed, 7 deletions(-)
Zbigniew Jędrzejewski-Szmek 43ff24
Zbigniew Jędrzejewski-Szmek 43ff24
diff --git a/src/timesync/timesyncd.c b/src/timesync/timesyncd.c
Zbigniew Jędrzejewski-Szmek 43ff24
index 9bc773ce5f..19af9f9b61 100644
Zbigniew Jędrzejewski-Szmek 43ff24
--- a/src/timesync/timesyncd.c
Zbigniew Jędrzejewski-Szmek 43ff24
+++ b/src/timesync/timesyncd.c
Zbigniew Jędrzejewski-Szmek 43ff24
@@ -331,9 +331,6 @@ static int manager_clock_watch(sd_event_source *source, int fd, uint32_t revents
Zbigniew Jędrzejewski-Szmek 43ff24
         /* rearm timer */
Zbigniew Jędrzejewski-Szmek 43ff24
         manager_clock_watch_setup(m);
Zbigniew Jędrzejewski-Szmek 43ff24
 
Zbigniew Jędrzejewski-Szmek 43ff24
-        if (!m->current_server_address)
Zbigniew Jędrzejewski-Szmek 43ff24
-                return 0;
Zbigniew Jędrzejewski-Szmek 43ff24
-
Zbigniew Jędrzejewski-Szmek 43ff24
         /* skip our own jumps */
Zbigniew Jędrzejewski-Szmek 43ff24
         if (m->jumped) {
Zbigniew Jędrzejewski-Szmek 43ff24
                 m->jumped = false;
Zbigniew Jędrzejewski-Szmek 43ff24
@@ -1047,10 +1044,6 @@ static int manager_new(Manager **ret) {
Zbigniew Jędrzejewski-Szmek 43ff24
         if (r < 0)
Zbigniew Jędrzejewski-Szmek 43ff24
                 return r;
Zbigniew Jędrzejewski-Szmek 43ff24
 
Zbigniew Jędrzejewski-Szmek 43ff24
-        r = manager_clock_watch_setup(m);
Zbigniew Jędrzejewski-Szmek 43ff24
-        if (r < 0)
Zbigniew Jędrzejewski-Szmek 43ff24
-                return r;
Zbigniew Jędrzejewski-Szmek 43ff24
-
Zbigniew Jędrzejewski-Szmek 43ff24
         *ret = m;
Zbigniew Jędrzejewski-Szmek 43ff24
         m = NULL;
Zbigniew Jędrzejewski-Szmek 43ff24