Re: Trouble running chronyd on old hardware

Bill Unruh <[email protected]>
Newsgroups gmane.comp.time.chrony.user
Message-ID <[email protected]>
Why would you be running a 2.6 kernel? Is that really the newest kernet that
you hardware support?


William G. Unruh __| Canadian Institute for|____ Tel: +1(604)822-3273
Physics&Astronomy _|___ Advanced Research _|____ Fax: +1(604)822-5324
UBC, Vancouver,BC _|_ Program in Cosmology |____ [email protected]
Canada V6T 1Z1 ____|____ and Gravity ______|_    theory.physics.ubc.ca/

On Mon, 4 Dec 2023, Ahmed Habub wrote:

> [CAUTION: Non-UBC Email]Hi Team, sorry for my bad English;
> 
> I'm trying to run chrony on a low-powered device, arm-926ejs CPU 400MHz and 128MB of ram running Linux
> 2.6.31.4.26007 with Busybox slapped on top.
> 
> I managed to cross compile as I have a toolchain available to me, however, running chronyd on this device runs
> with -dd and prints a couple of errors, then ends up in some sort of infinite loop.
> 
> Running within GDB (same happens inside or out):
> 
> # gdb --args chronyd -4 -n 'server time.cloudflare.com iburst' -dd
> GNU gdb (GDB) 8.3.1
> Copyright (C) 2019 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.
> Type "show copying" and "show warranty" for details.
> This GDB was configured as "arm-926ejs-linux-gnueabi".
> Type "show configuration" for configuration details.
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Find the GDB manual and other documentation resources online at:
>     <http://www.gnu.org/software/gdb/documentation/>.
> 
> For help, type "help".
> Type "apropos word" to search for commands related to "word"...
> Reading symbols from chronyd...
> (gdb) run
> Starting program: /root/chronyd -4 -n server\ time.cloudflare.com\ iburst -dd
> 2023-11-29T10:01:20Z I:main.c:579:(main) chronyd version DEVELOPMENT starting (+CMDMON +NTP +REFCLOCK +RTC
> -PRIVDROP -SCFILTER -SIGND -ASYNCDNS -NTS -SECHASH -IPV6 +DEBUG)
> 2023-11-29T10:01:20Z D:util.c:1419:(UTI_OpenFile) Opened /var/run/chrony/chronyd.pid fd=3 mode=r
> 2023-11-29T10:01:22Z D:util.c:1403:(UTI_OpenFile) Removed /var/run/chrony/chronyd.pid
> 2023-11-29T10:01:22Z D:util.c:1419:(UTI_OpenFile) Opened /var/run/chrony/chronyd.pid fd=3 mode=W
> 2023-11-29T10:01:22Z D:local.c:171:(LCL_Initialise) Clock precision 0.000001879 (-19)
> 2023-11-29T10:01:22Z D:sys_linux.c:294:(get_version_specific_details) Linux kernel major=2 minor=6 patch=31
> 2023-11-29T10:01:22Z D:sys_linux.c:321:(get_version_specific_details) hz=100 nominal_tick=10000
> max_tick_bias=1000 tick_update_hz=2
> 2023-11-29T10:01:22Z D:local.c:683:(lcl_RegisterSystemDrivers) Local freq=-0.952ppm
> 2023-11-29T10:01:22Z D:socket.c:1511:(SCK_SetIntOption) setsockopt() failed fd=3 level=1 name=15 value=1 :
> Protocol not available
> 2023-11-29T10:01:22Z D:socket.c:581:(open_ip_socket) Opened UDPv4 socket fd=3 local=127.0.0.1:323
> 2023-11-29T10:01:22Z D:util.c:1419:(UTI_OpenFile) Opened /dev/urandom fd=4 mode=R
> 2023-11-29T10:01:22Z W:main.c:656:(main) Running with root privileges
> 2023-11-29T10:01:22Z I:reference.c:240:(REF_Initialise) Initial frequency -0.952 ppm
> 2023-11-29T10:01:22Z D:clientlog.c:406:(CLG_Initialise) Max records 4096
> 2023-11-29T10:01:22Z D:socket.c:673:(open_unix_socket) Opened Unix socket fd=5
> local=/var/run/chrony/chronyd.sock
> 2023-11-29T10:01:22Z D:ntp_sources.c:349:(log_source) Added source ID#0000000001 (time.cloudflare.com)
> 2023-11-29T10:01:22Z D:ntp_sources.c:693:(resolve_sources) resolving time.cloudflare.com
> 2023-11-29T10:01:22Z D:ntp_sources.c:614:(name_resolve_handler) time.cloudflare.com resolved to 2 addrs
> 2023-11-29T10:01:22Z D:ntp_sources.c:553:(process_resolved_name) (1) 162.159.200.123
> 2023-11-29T10:01:22Z D:socket.c:581:(open_ip_socket) Opened UDPv4 socket fd=6 remote=162.159.200.123:123
> local=0.0.0.0:0
> 2023-11-29T10:01:22Z D:socket.c:1511:(SCK_SetIntOption) setsockopt() failed fd=6 level=1 name=45 value=1 :
> Protocol not available
> 2023-11-29T10:01:22Z D:ntp_sources.c:478:(change_source_address) Source ID#0000000001 replaced with
> 162.159.200.123 (time.cloudflare.com)
> 2023-11-29T10:01:22Z D:ntp_core.c:1402:(transmit_timeout) Transmit timeout for 162.159.200.123:123
> 2023-11-29T10:01:22Z D:socket.c:581:(open_ip_socket) Opened UDPv4 socket fd=6 remote=162.159.200.123:123
> local=0.0.0.0:0
> 2023-11-29T10:01:22Z D:socket.c:794:(log_message) Sent message fd=6 len=48
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 2023-11-29T10:01:22Z D:socket.c:733:(handle_recv_error) Could not receive message fd=6 : Function not
> implemented
> 
> This just continues forever
> 
> So I'm not quite sure what the issue could be, a couple of calls to setsockopt return "Protocol not available"
> 
> I did notice inside
> ntp_io_linux.c:467:
> SCK_SetIntOption(sock_fd, SOL_SOCKET, SO_SELECT_ERR_QUEUE, val)
> 
> SO_SELECT_ERR_QUEUE is not available in my Linux kernel, according to linux manpages this became available in
> 3.10. When compiling I specified :
> 
> ./configure --sysconfdir="/etc" --host-system=Linux --host-release=2.6.31.4.26007 --host-machine=armv5tejl
> --enable-debug --disable-ipv6 --disable-asyncdns --without-nss
> 
> Any ideas? Is my Kernel too old to run chrony? What protocol is not available? Busybox ntpd seems to work, and
> I made sure it wasn't running prior to this.
> 
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.