From: Miroslav Lichvar Date: Wed, 4 Jun 2014 14:46:15 +0000 (+0200) Subject: ntp: cook SO_TIMESTAMP timestamp X-Git-Tag: 1.30-pre1~9 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9913851413fe078ebfe66ec59ab6c1a184efe0f1;p=thirdparty%2Fchrony.git ntp: cook SO_TIMESTAMP timestamp This is a partial revert of 8aa9eb19c826f3ea4a9c2ce5e3a71b74aeeb99d0. With the new generic driver cooking is cheap and it should be slighly more accurate than reusing offset correction from the scheduler timestamps. --- diff --git a/ntp_io.c b/ntp_io.c index f84becc5..b9515f6a 100644 --- a/ntp_io.c +++ b/ntp_io.c @@ -472,7 +472,7 @@ read_from_socket(void *anything) ReceiveBuffer message; union sockaddr_in46 where_from; unsigned int flags = 0; - struct timeval now, now_raw; + struct timeval now; double now_err; NTP_Remote_Address remote_addr; NTP_Local_Address local_addr; @@ -483,7 +483,7 @@ read_from_socket(void *anything) assert(initialised); - SCH_GetLastEventTime(&now, &now_err, &now_raw); + SCH_GetLastEventTime(&now, &now_err, NULL); iov.iov_base = message.arbitrary; iov.iov_len = sizeof(message); @@ -554,9 +554,7 @@ read_from_socket(void *anything) struct timeval tv; memcpy(&tv, CMSG_DATA(cmsg), sizeof(tv)); - - /* This should be more accurate than LCL_CookTime(&now_raw,...) */ - UTI_AddDiffToTimeval(&now, &now_raw, &tv, &now); + LCL_CookTime(&tv, &now, &now_err); } #endif }