summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--recipes-support/ntp/files/logtime.patch58
-rw-r--r--recipes-support/ntp/files/ntp.conf.patch8
-rw-r--r--recipes-support/ntp/files/ntpd-init.patch63
-rw-r--r--recipes-support/ntp/ntp_%.bbappend3
4 files changed, 58 insertions, 74 deletions
diff --git a/recipes-support/ntp/files/logtime.patch b/recipes-support/ntp/files/logtime.patch
index 6b104ce..bb253f4 100644
--- a/recipes-support/ntp/files/logtime.patch
+++ b/recipes-support/ntp/files/logtime.patch
@@ -1,13 +1,9 @@
- Create a test to log time since boot MONOTONIC_RAW or uptime
- and the REALTIME clock (UTC)
- Not real sure how the build should work. To build logtime
- do bitbake -c devshell ntp
- Then cd clockstuff, and to:
- make logtime
-==============================================================
-diff -Naur old/clockstuff/logtime.c new/clockstuff/logtime.c
---- old/clockstuff/logtime.c 1969-12-31 18:00:00.000000000 -0600
-+++ new/clockstuff/logtime.c 2017-01-27 16:55:46.420307603 -0600
+# The logtime test is used to compare the kernel realtime
+# clock and the kernel monotonic clock, so that leap
+# second may be observed.
+diff -Naru old/tests/ntpd/logtime.c new/tests/ntpd/logtime.c
+--- old/tests/ntpd/logtime.c 1969-12-31 18:00:00.000000000 -0600
++++ new/tests/ntpd/logtime.c 2017-05-30 13:22:11.827179154 -0500
@@ -0,0 +1,44 @@
+#include <time.h>
+#include <stdio.h>
@@ -53,27 +49,25 @@ diff -Naur old/clockstuff/logtime.c new/clockstuff/logtime.c
+ }
+
+}
-diff -Naur old/clockstuff/Makefile.am new/clockstuff/Makefile.am
---- old/clockstuff/Makefile.am 2017-01-27 16:50:58.929973639 -0600
-+++ new/clockstuff/Makefile.am 2017-01-27 16:53:22.625139584 -0600
-@@ -1,7 +1,7 @@
- #AUTOMAKE_OPTIONS = ../ansi2knr no-dependencies
- AUTOMAKE_OPTIONS =
--noinst_PROGRAMS = @PROPDELAY@ @CHUTEST@ @CLKTEST@
--EXTRA_PROGRAMS = propdelay chutest clktest
-+noinst_PROGRAMS = @PROPDELAY@ @CHUTEST@ @CLKTEST@ @LOGTIME@
-+EXTRA_PROGRAMS = propdelay chutest clktest logtime
+diff -Naru old/tests/ntpd/Makefile.am new/tests/ntpd/Makefile.am
+--- old/tests/ntpd/Makefile.am 2017-05-30 13:31:45.124160267 -0500
++++ new/tests/ntpd/Makefile.am 2017-05-30 16:53:59.784755988 -0500
+@@ -29,6 +29,7 @@
+ test-ntp_restrict \
+ test-ntp_scanner \
+ test-ntp_signd \
++ logtime \
+ $(NULL)
- INCLUDES = -I$(top_srcdir)/include
- # We need -lm (and perhaps $(COMPAT) for propdelay, -lntp for {chu,clk}test
-diff -Naur old/configure.ac new/configure.ac
---- old/configure.ac 2017-01-27 17:59:46.940532782 -0600
-+++ new/configure.ac 2017-01-27 17:55:26.626841232 -0600
-@@ -4115,6 +4115,7 @@
- AC_SUBST([PROPDELAY]) dnl Set to "propdelay"
- AC_SUBST([CHUTEST]) dnl Set to "chutest"
- AC_SUBST([CLKTEST]) dnl Set to "clktest"
-+AC_SUBST([LOGTIME]) dnl Set to "logtime"
- AC_SUBST([MAKE_ADJTIMED])
- AC_MSG_CHECKING([if we want HP-UX adjtimed support])
+@@ -191,8 +192,8 @@
+ ## check-libntp.mf - automake fragment
+ ## slightly adapted for deeper directory
+
+-BUILT_SOURCES += check-libntpd check-libntp check-libunity
+-CLEANFILES += check-libntpd check-libntp check-libunity
++BUILT_SOURCES += check-libntpd check-libntp check-libunity logtime
++CLEANFILES += check-libntpd check-libntp check-libunity logtime
+
+ check-libntpd: ../../ntpd/libntpd.a
+ @echo stamp > $@
diff --git a/recipes-support/ntp/files/ntp.conf.patch b/recipes-support/ntp/files/ntp.conf.patch
index bb1dcfe..1a40d24 100644
--- a/recipes-support/ntp/files/ntp.conf.patch
+++ b/recipes-support/ntp/files/ntp.conf.patch
@@ -1,11 +1,11 @@
-diff -Naur old/ntp.conf new/ntp.conf
---- old/ntp.conf 2017-02-02 19:09:54.524791189 -0600
-+++ new/ntp.conf 2017-02-02 19:06:41.744669788 -0600
+diff -Naru orig.new/ntp.conf up/ntp.conf
+--- orig.new/ntp.conf 2017-05-30 10:44:16.311034239 -0500
++++ up/ntp.conf 2017-05-30 10:37:42.837793409 -0500
@@ -1,16 +1,47 @@
-# This is the most basic ntp configuration file
# The driftfile must remain in a place specific to this
# machine - it records the machine specific clock error
--driftfile /etc/ntp.drift
+-driftfile /var/lib/ntp/drift
+# Driftfile must be in a directory owned by ntp
+driftfile /var/lib/ntp/ntp.drift
+
diff --git a/recipes-support/ntp/files/ntpd-init.patch b/recipes-support/ntp/files/ntpd-init.patch
index 2ef7e0b..1890e07 100644
--- a/recipes-support/ntp/files/ntpd-init.patch
+++ b/recipes-support/ntp/files/ntpd-init.patch
@@ -1,17 +1,23 @@
-diff -Naur old/ntpd new/ntpd
---- old/ntpd 2017-02-06 09:21:52.607908299 -0600
-+++ new/ntpd 2017-02-06 09:22:52.417169090 -0600
-@@ -1,6 +1,8 @@
+diff -Naru old/ntpd up/ntpd
+--- old/ntpd 2017-05-30 11:08:30.368920821 -0500
++++ up/ntpd 2017-05-30 11:52:42.965527343 -0500
+@@ -1,4 +1,4 @@
-#! /bin/sh
+#! /bin/bash
- #
+
+ ### BEGIN INIT INFO
+ # Provides: ntp
+@@ -9,7 +9,9 @@
+ # Short-Description: Start NTP daemon
+ ### END INIT INFO
+
+. /etc/default/ntpd
PATH=/sbin:/bin:/usr/bin:/usr/sbin
+GNSSRST=/sys/devices/platform/mts-io/gnss-reset
- # ntpd init.d script for ntpdc from ntp.isc.org
- test -x /usr/sbin/ntpd -a -r /etc/ntp.conf || exit 0
-@@ -18,13 +20,29 @@
+ DAEMON=/usr/sbin/ntpd
+ PIDFILE=/var/run/ntpd.pid
+@@ -34,13 +36,35 @@
}
}
startdaemon(){
@@ -20,7 +26,7 @@ diff -Naur old/ntpd new/ntpd
- # this. If ntpd seems to disappear after a while assume TICKADJ
- # above is set to a totally incorrect value.
- echo -n "Starting ntpd: "
-- start-stop-daemon --start -x /usr/sbin/ntpd -- -u ntp:ntp -p /var/run/ntp.pid "$@"
+- start-stop-daemon --start --quiet --oknodo --pidfile $PIDFILE --startas $DAEMON -- -u ntp:ntp -p $PIDFILE "$@"
- echo "done"
+ /usr/sbin/start-stop-daemon -N -20 --start -x /usr/sbin/ntpd --test -- -u ntp:ntp -p /var/run/ntp.pid "$@" \
+ || return 1
@@ -32,7 +38,7 @@ diff -Naur old/ntpd new/ntpd
+ # use the ntpd one shot option to get to less than
+ # 250mS error so that we don't waste time adjusting the clock.
+ /usr/sbin/ntpd -gq
-+ /usr/sbin/start-stop-daemon -N -20 --start -x /usr/sbin/ntpd -- -u ntp:ntp -p /var/run/ntp.pid "$@"
++ start-stop-daemon -N -20 --start --quiet --oknodo --pidfile $PIDFILE --startas $DAEMON -- -u ntp:ntp -p $PIDFILE "$@"
+ else
+ # Need a GPS fix before startint ntp. Try again later.
+ /usr/sbin/start-stop-daemon -b -n z1e9d3qb -N -20 --start -x /bin/bash -- -c "sleep $GPSD_WAIT_TIME;/etc/init.d/ntpd start"
@@ -43,17 +49,21 @@ diff -Naur old/ntpd new/ntpd
+ ntpd -gq
+ shift
+ fi
-+ /usr/sbin/start-stop-daemon -N -20 --start -x /usr/sbin/ntpd -- -u ntp:ntp -p /var/run/ntp.pid "$@"
++ # The -g option allows ntpd to step the time to correct it just
++ # once. The daemon will exit if the clock drifts too much after
++ # this. If ntpd seems to disappear after a while assume TICKADJ
++ # above is set to a totally incorrect value.
++ echo -n "Starting ntpd: "
++ start-stop-daemon -N -20 --start --quiet --oknodo --pidfile $PIDFILE --startas $DAEMON -- -u ntp:ntp -p $PIDFILE "$@"
++ echo "done"
+ fi
}
stopdaemon(){
echo -n "Stopping ntpd: "
-@@ -34,24 +52,38 @@
+@@ -50,6 +74,20 @@
case "$1" in
start)
-- settick
-- startdaemon -g
+ if ! [[ $ENABLED =~ ^[yY][eE][sS]$ ]] ; then
+ exit 0
+ fi
@@ -68,29 +78,6 @@ diff -Naur old/ntpd new/ntpd
+ chown ntp:ntp ${STATSDIR} >/dev/null 2>&1
+ fi
+ fi
-+ settick
-+ startdaemon -g $CONFIGOPT
- ;;
- stop)
-- stopdaemon
-+ stopdaemon
- ;;
- force-reload)
-- stopdaemon
-- settick
-+ stopdaemon
-+ settick
+ settick
startdaemon -g
;;
- restart)
-- # Don't reset the tick here
-+ # Don't reset the tick here
- stopdaemon
- startdaemon -g
- ;;
- reload)
-- # Must do this by hand, but don't do -g
-+ # Must do this by hand, but don't do -g
- stopdaemon
- startdaemon
- ;;
diff --git a/recipes-support/ntp/ntp_%.bbappend b/recipes-support/ntp/ntp_%.bbappend
index c8e094d..6c75feb 100644
--- a/recipes-support/ntp/ntp_%.bbappend
+++ b/recipes-support/ntp/ntp_%.bbappend
@@ -1,6 +1,9 @@
PR .= ".mlinux2"
SRC_URI += " file://ntpd-default \
+ file://ntp.conf.patch;patchdir=.. \
+ file://ntpd-init.patch;patchdir=.. \
+ file://logtime.patch \
"
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"