From 802d7992db30a79eaba645a13a07cf77c8f888f5 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Sat, 29 Aug 2020 21:55:58 -0700 Subject: [PATCH] hwclock: fix SYS_settimeofday fallback turns out this is subtly broken. musl 1.2.x for 64-bit architectures defines __NR_settimeofday but not for 32-bit ones. For 32-bit, it defines a _time32 variant. --- sys-utils/hwclock.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sys-utils/hwclock.c b/sys-utils/hwclock.c index ac74549d74..c1cfbd3949 100644 --- a/sys-utils/hwclock.c +++ b/sys-utils/hwclock.c @@ -675,8 +675,12 @@ display_time(struct timeval hwctime) */ #define __set_time(_tv) settimeofday(_tv, NULL) -#if !defined(SYS_settimeofday) && defined(__NR_settimeofday) -# define SYS_settimeofday __NR_settimeofday +#ifndef SYS_settimeofday +# ifdef __NR_settimeofday +# define SYS_settimeofday __NR_settimeofday +# else +# define SYS_settimeofday __NR_settimeofday_time32 +# endif #endif static inline int __set_timezone(const struct timezone *tz) -- 2.47.3