sparc64: add custom adjtimex/clock_adjtime functions
authorArnd Bergmann <arnd@arndb.de>
Thu, 3 Jan 2019 20:12:39 +0000 (21:12 +0100)
committerArnd Bergmann <arnd@arndb.de>
Wed, 6 Feb 2019 23:13:27 +0000 (00:13 +0100)
commit1a596398a3d75f966b75f428e992cf1f242f9a5b
tree41f323cd7eceec2b40df53cb805586c4df05d9b8
parent50b93f30f6d8672f9ec80e90af94d733f11a20e0
sparc64: add custom adjtimex/clock_adjtime functions

sparc64 is the only architecture on Linux that has a 'timeval'
definition with a 32-bit tv_usec but a 64-bit tv_sec. This causes
problems for sparc32 compat mode when we convert it to use the
new __kernel_timex type that has the same layout as all other
64-bit architectures.

To avoid adding sparc64 specific code into the generic adjtimex
implementation, this adds a wrapper in the sparc64 system call handling
that converts the sparc64 'timex' into the new '__kernel_timex'.

At this point, the two structures are defined to be identical,
but that will change in the next step once we convert sparc32.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
arch/sparc/kernel/sys_sparc_64.c
arch/sparc/kernel/syscalls/syscall.tbl
include/linux/timex.h
kernel/time/posix-timers.c