Date: Wed, 8 Nov 2017 06:45:35 -0800 From: Mark Millard <markmi@dsl-only.net> To: Henri Hennebert <hlh@restart.be>, freebsd-arm <freebsd-arm@freebsd.org> Subject: Re: PINE64 - 12.0-CURRENT r324563 - ntpd can't keep time Message-ID: <92708941-6FB9-446D-B231-05B9A5392108@dsl-only.net> In-Reply-To: <509ED220-4989-4ADA-BE23-07ACD7D50671@dsl-only.net> References: <d85f883f-84c2-5051-1996-2a0e73a2c1e7@restart.be> <4BF75B1E-318C-414A-B5D4-4BA7D6578316@dsl-only.net> <1509029871.56824.49.camel@freebsd.org> <c2bff518-89ce-4956-2548-e56afab5d83d@restart.be> <509ED220-4989-4ADA-BE23-07ACD7D50671@dsl-only.net>
next in thread | previous in thread | raw e-mail | index | archive | help
[Adding kernel configuration for reference.] On 2017-Nov-8, at 6:37 AM, Mark Millard <markmi at dsl-only.net> wrote: > On 2017-Nov-8, at 5:04 AM, Henri Hennebert <hlh at restart.be> wrote: >=20 >> On 10/26/2017 16:57, Ian Lepore wrote: >>> On Thu, 2017-10-26 at 01:06 -0700, Mark Millard wrote: >>>> On 2017-Oct-26, at 12:40 AM, Henri Hennebert <hlh@restart.be> = wrote: >>>>=20 >>>>>=20 >>>>> After a upgrade from r320599 to r324563, ntpd can't keep time for = long. >>>>> After one hour, the clock run too fast. >>>> I'm running: >>>>=20 >>>> # uname -apKU >>>> FreeBSD pine64 12.0-CURRENT FreeBSD 12.0-CURRENT r324743M arm64 = aarch64 1200051 1200051 >>>>=20 >>>> Top shows: >>>>=20 >>>> /usr/sbin/ntpd -g -c /etc/ntp.conf -p /var/run/ntpd.pid -f = /var/db/ntpd.drift >>>>=20 >>>> It has been up for 3 days and date shows >>>> what I'd expect (local time). Also: >>>>=20 >>>> # ntpq -p >>>> remote refid st t when poll reach delay = offset jitter >>>> = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D >>>> 0.freebsd.pool. .POOL. 16 p - 64 0 0.000 = 0.000 0.000 >>>> +96.226.123.195 128.138.141.172 2 u 486 512 377 53.512 = -0.639 0.795 >>>> +clock.xmission. 128.138.141.172 2 u 75 512 377 43.109 = -0.005 1.301 >>>> *chl.la 127.67.113.92 2 u 272 512 177 29.258 = 0.091 1.667 >>>> +mirror1.sjc02.s 162.213.2.253 2 u 44 512 377 28.404 = -0.632 2.297 >>>> -mdnworldwide.co 216.218.254.202 2 u 95 1024 377 68.184 = -3.070 1.488 >>=20 >> I upgrade to r324743 and ntpd can't keep time. Maybe of importance, I = was upgrading the ports after this switch to r324743. Moreover the = problem with pf occurs really frequently (see >> https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D222126) >=20 > The Pine64+ 2GB that I have access to still is > operating fine for the date/time: >=20 > # uname -apKU > FreeBSD pine64 12.0-CURRENT FreeBSD 12.0-CURRENT r324743M arm64 = aarch64 1200051 1200051 >=20 > # uptime > 5:59AM up 16 days, 12:49, 2 users, load averages: 0.04, 0.07, 0.07 >=20 > (It has been largely idle over much of > that time, but did svnlite update /usr/ports > and poudriere bulk related to what I > later list.) >=20 > # date > Wed Nov 8 06:00:35 PST 2017 >=20 > # more /var/db/ntpd.drift > 39.921 >=20 > # ntpq -p > remote refid st t when poll reach delay offset = jitter > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > 0.freebsd.pool. .POOL. 16 p - 64 0 0.000 0.000 = 0.000 > -time-c-g.nist.g .NIST. 1 u 976 1024 377 91.445 -1.676 = 1.383 > -tock.no-such-ag 129.6.15.29 2 u 1051 1024 377 79.671 0.076 = 0.956 > +104.131.53.252 209.51.161.238 2 u 156 1024 377 79.349 1.070 = 0.666 > +4.53.160.75 142.66.101.13 2 u 427 1024 377 56.329 2.112 = 1.541 > *us-wa.ntp.dark- 200.98.196.212 2 u 301 1024 377 12.786 1.213 = 2.268 >=20 >=20 > The Pine64+ 2GB configuration is nearly > default, no pf or such. details follow. >=20 > # more /boot/loader.conf=20 > geom_label_load=3D"YES" # File system labels (see glabel(8)) > # > kern.cam.boot_delay=3D"10000" > dumpdev=3D"/dev/label/PINE642Gswap" >=20 > # more /etc/rc.conf > hostname=3D"pine64" > # > keymap=3D"us" > # > background_dhclient=3D"YES" > synchronous_dhclient=3D"YES" > # > ifconfig_awg0=3D"DHCP" > # > sshd_enable=3D"YES" > # > # Nice if you have a network, else annoying. > ntpd_enable=3D"YES" > ntpd_sync_on_start=3D"YES" > # > # Set dumpdev to "AUTO" to enable crash dumps, "NO" to disable > dumpdev=3D"/dev/label/PINE642Gswap" > # > rpcbind_enable=3D"YES" > nfs_server_enable=3D"YES" > mountd_flags=3D"-r" > # > nfs_client_enable=3D"YES" >=20 > (Note: The following were built with > poudriere bulk, which, of course, > built more than is installed.) >=20 > # pkg info > atf-0.21 C, C++ and shell libraries to write = ATF-compliant test programs > binutils-2.28,1 GNU binary tools > bonnie-2.0.6_1 Performance Test of Filesystem I/O > bonnie++-1.97.3 Performance Test of Filesystem I/O > ca_root_nss-3.32.1 Root certificate bundle from the = Mozilla Project > curl-7.56.1 Command line tool and library for = transferring data with URLs > dialog4ports-0.1.6 Console Interface to configure ports > dtrace-toolkit-1.0_1 Collection of useful scripts for DTrace > dwarfdump-20161124 Tool to display DWARF debugging = information in ELF files > expat-2.2.1 XML 1.0 parser written in C > freebsd-release-manifests-20171003 FreeBSD release manifests > gcc7-7.2.0_2 GNU Compiler Collection 7 > gdb-8.0.1_1 GNU GDB of newer version than comes = with the system > gettext-runtime-0.19.8.1_1 GNU gettext runtime libraries and = programs > git-lite-2.14.3 Distributed source code management tool = (lite package) > gmp-6.1.2 Free library for arbitrary precision = arithmetic > indexinfo-0.3 Utility to regenerate the GNU info page = index > iorate-3.05 General purpose storage I/O = benchmarking tool > iozone-3.457 Performance Test of Sequential File I/O > kyua-0.13_4,3 Testing framework for infrastructure = software > libedit-3.1.20170329_2,1 Command line editor library > libidn2-2.0.4 Implementation of IDNA2008 = internationalized domain names > libnghttp2-1.27.0 HTTP/2.0 C Library > libunistring-0.9.7 Unicode string library > lua52-5.2.4 Small, compilable scripting language = providing easy access to C code > lutok-0.4_6 Lightweight C++ API for Lua > mpc-1.0.3 Library of complex numbers with = arbitrarily high precision > mpfr-3.1.6 Library for multiple-precision = floating-point computations > patch-2.7.5 GNU patch utility > pcre-8.40_1 Perl Compatible Regular Expressions = library > perl5-5.24.3 Practical Extraction and Report = Language > pkg-1.10.1 Package manager > portlint-2.17.13 Verifier for FreeBSD port directory > portmaster-3.17.10 Manage your ports without external = databases or languages > poudriere-devel-3.1.99.20171028 Port build and test system > randomio-1.4 Multithreaded disk i/o microbenchmark > readline-7.0.3_1 Library for editing command lines as = they are typed > rsync-3.1.2_7 Network file = distribution/synchronization utility > sqlite3-3.20.1_2 SQL database engine in a C library > stress-1.0.4 Tool to impose load on and stress test = Unix-like systems > sudo-1.8.21p2 Allow others to run commands as root > unzip-6.0_7 List, test, and extract compressed = files from a ZIP archive > wget-1.19.2 Retrieve files from the Net via HTTP(S) = and FTP > zip-3.0_1 Create/update ZIP files compatible with = PKZIP >=20 > # svnlite info /usr/ports | grep "Re[plv]" > Relative URL: ^/head > Repository Root: svn://svn.freebsd.org/ports > Repository UUID: 35697150-7ecd-e111-bb59-0022644237b5 > Revision: 453215 > Last Changed Rev: 453215 >=20 > # ps -aux > USER PID %CPU %MEM VSZ RSS TT STAT STARTED TIME = COMMAND > root 11 400.0 0.0 0 64 - RNL 22Oct17 93930:24.03 = [idle] > root 0 0.0 0.0 0 272 - DLs 22Oct17 0:04.31 = [kernel] > root 1 0.0 0.0 9872 128 - ILs 22Oct17 0:00.15 = /sbin/init -- > root 2 0.0 0.0 0 16 - DL 22Oct17 0:00.00 = [crypto] > root 3 0.0 0.0 0 16 - DL 22Oct17 0:00.00 = [crypto returns] > root 4 0.0 0.0 0 32 - DL 22Oct17 19:46.41 [cam] > root 5 0.0 0.0 0 16 - DL 22Oct17 0:00.00 = [sctp_iterator] > root 6 0.0 0.0 0 16 - DL 22Oct17 15:21.84 = [rand_harvestq] > root 7 0.0 0.0 0 16 - DL 22Oct17 0:00.43 = [soaiod1] > root 8 0.0 0.0 0 16 - DL 22Oct17 0:00.33 = [soaiod2] > root 9 0.0 0.0 0 16 - DL 22Oct17 0:00.42 = [soaiod3] > root 10 0.0 0.0 0 16 - DL 22Oct17 0:00.00 = [audit] > root 12 0.0 0.0 0 224 - WL 22Oct17 313:25.83 = [intr] > root 13 0.0 0.0 0 48 - DL 22Oct17 34:24.71 = [geom] > root 14 0.0 0.0 0 160 - DL 22Oct17 86:16.22 [usb] > root 15 0.0 0.0 0 16 - DL 22Oct17 2:59.38 = [soaiod4] > root 16 0.0 0.0 0 16 - DL 22Oct17 0:09.45 = [mmcsd0: mmc/sd card] > root 17 0.0 0.0 0 48 - DL 22Oct17 0:31.22 = [pagedaemon] > root 18 0.0 0.0 0 16 - DL 22Oct17 0:00.00 = [vmdaemon] > root 19 0.0 0.0 0 32 - DL 22Oct17 9:59.58 = [bufdaemon] > root 20 0.0 0.0 0 16 - DL 22Oct17 0:22.27 = [bufspacedaemon] > root 21 0.0 0.0 0 16 - DL 22Oct17 1:43.47 = [syncer] > root 22 0.0 0.0 0 16 - DL 22Oct17 7:47.06 = [vnlru] > root 276 0.0 0.0 11500 384 - Is 22Oct17 0:00.01 = dhclient: awg0 [priv] (dhclient) > _dhcp 277 0.0 0.0 11664 720 - ICs 22Oct17 0:00.02 = dhclient: awg0 (dhclient) > root 382 0.0 0.0 13744 112 - Is 22Oct17 0:01.61 = /sbin/devd > root 453 0.0 0.1 12108 1268 - Ss 22Oct17 3:04.02 = /usr/sbin/syslogd -s > root 462 0.0 0.0 11300 708 - Ss 22Oct17 0:03.89 = /usr/sbin/rpcbind > root 588 0.0 0.0 12468 868 - Is 22Oct17 0:00.16 = /usr/sbin/mountd -r > root 590 0.0 0.0 11816 696 - Is 22Oct17 0:00.09 nfsd: = master (nfsd) > root 591 0.0 0.1 10912 1096 - I 22Oct17 3:01.28 nfsd: = server (nfsd) > root 627 0.0 0.9 17860 17944 - Ss 22Oct17 1:13.39 = /usr/sbin/ntpd -g -c /etc/ntp.conf -p /var/run/ntpd.pid -f = /var/db/ntpd.drift > root 670 0.0 0.0 19076 984 - Is 22Oct17 0:00.01 = /usr/sbin/sshd > root 673 0.0 0.1 15308 1744 - Ss 22Oct17 0:35.19 = sendmail: accepting connections (sendmail) > smmsp 676 0.0 0.1 15156 1060 - Is 22Oct17 0:00.65 = sendmail: Queue runner@00:30:00 for /var/spool/clientmqueue (sendmail) > root 680 0.0 0.1 11616 1044 - Ss 22Oct17 0:07.92 = /usr/sbin/cron -s > root 29637 0.0 0.2 20412 3368 - Is Wed23 0:00.08 sshd: = markmi [priv] (sshd) > markmi 29640 0.0 0.1 20776 1508 - S Wed23 0:23.83 sshd: = markmi@pts/0 (sshd) > root 728 0.0 0.1 13360 1644 u0 Is 22Oct17 0:00.06 login = [pam] (login) > root 8809 0.0 0.1 12260 1940 u0 I 25Oct17 0:00.26 -sh = (sh) > root 11533 0.0 0.1 13396 2564 u0 I+ 26Oct17 49:23.32 top = -CawPosize > markmi 29641 0.0 0.1 12256 1644 0 Is Wed23 0:00.02 -sh = (sh) > root 29647 0.0 0.1 13320 1644 0 I Wed23 0:00.04 su > root 29648 0.0 0.1 12364 2180 0 S Wed23 0:00.08 su = (sh) > root 77304 0.0 0.1 12228 2836 0 R+ 06:03 0:00.01 ps = -aux >=20 > (Idle counts time per core.) >=20 > # systat -vmstat >=20 > 2 users Load 0.06 0.07 0.07 Nov 8 06:23 > Mem usage: 76%Phy 1%Kmem > Mem: KB REAL VIRTUAL VN PAGER = SWAP PAGER > Tot Share Tot Share Free in out in = out > Act 49684 8044 290752 16296 479568 count > All 51444 9720 319156 44208 pages > Proc: = Interrupts > r p d s w Csw Trp Sys Int Sof Flt ioflt 14 = total > 52 41 1 29 13 8 cow 4 = gic0,p11: > zfod = gic0,s0: u > 0.0%Sys 0.0%Intr 0.0%User 0.0%Nice 100%Idle ozfod = gic0,s60: > | | | | | | | | | | %ozfod 2 = gic0,s74: > daefr 1 = gic0,s82: > 1273 dtbuf prcfr = cpu0:ast > Namei Name-cache Dir-cache 43272 desvn totfr = cpu1:ast > Calls hits % hits % 43272 numvn react = cpu2:ast > 3 3 100 34206 frevn pdwak = cpu3:ast > pdpgs 2 = cpu0:preem > Disks mmcsd da0 pass0 intrn 1 = cpu1:preem > KB/t 0.00 0.00 0.00 408808 wire 3 = cpu2:preem > tps 0 0 0 5100 act 1 = cpu3:preem > MB/s 0.00 0.00 0.00 1116460 inact = cpu0:rende > %busy 0 0 0 18472 laund = cpu1:rende > 479568 free = cpu2:rende > 143508 buf = cpu3:rende > = cpu0:hardc >=20 >=20 > It might be appropriate to back things off to > near-default and see if the time keeping is > then okay. (Compare to what I have, for > example.) Sitting idle might be part of this > experiment. >=20 > If it is okay, then gradually reintroduce things, > monitoring for time problems between, until > time starts to be a problem. Back off the > recent additions and then keep gradually > adding other things. See what all you can > have without having time problems vs. what > leads to problems. >=20 > Of course if the near-default still has time > problems sitting idle it would suggest something > more basic in your context is involved, > possibly hardware or a bad ntp time source. # more /usr/src/sys/arm64/conf/GENERIC-NODBG # # GENERIC -- Custom configuration for the arm64/aarch64 # include "GENERIC" ident GENERIC-NODBG makeoptions DEBUG=3D-g # Build kernel with gdb(1) = debug symbols options ALT_BREAK_TO_DEBUGGER options KDB # Enable kernel debugger support # For minimum debugger support (stable branch) use: #options KDB_TRACE # Print a stack trace for a = panic options DDB # Enable the kernel debugger # Extra stuff: #options VERBOSE_SYSINIT # Enable verbose sysinit = messages #options BOOTVERBOSE=3D1 #options BOOTHOWTO=3DRB_VERBOSE #options KTR #options KTR_MASK=3DKTR_TRAP ##options KTR_CPUMASK=3D0xF #options KTR_VERBOSE # Disable any extra checking for. . . nooptions DEADLKRES # Enable the deadlock resolver nooptions INVARIANTS # Enable calls of extra sanity = checking nooptions INVARIANT_SUPPORT # Extra sanity checks of = internal structures, required by INVARIANTS nooptions WITNESS # Enable checks to detect = deadlocks and cycles nooptions WITNESS_SKIPSPIN # Don't run witness on spinlocks = for speed nooptions DIAGNOSTIC nooptions MALLOC_DEBUG_MAXZONES # Separate malloc(9) zones nooptions BUF_TRACKING nooptions FULL_BUF_TRACKING =3D=3D=3D Mark Millard markmi at dsl-only.net
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?92708941-6FB9-446D-B231-05B9A5392108>