Commit 78e05972 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

ipc: fix semtimedop for generic 32-bit architectures

As Vincent noticed, the y2038 conversion of semtimedop in linux-5.1
broke when commit 00bf25d6

 ("y2038: use time32 syscall names on
32-bit") changed all system calls on all architectures that take
a 32-bit time_t to point to the _time32 implementation, but left out
semtimedop in the asm-generic header.

This affects all 32-bit architectures using asm-generic/unistd.h:
h8300, unicore32, openrisc, nios2, hexagon, c6x, arc, nds32 and csky.

The notable exception is riscv32, which has dropped support for the
time32 system calls entirely.

Reported-by: default avatarVincent Chen <>
Cc: Vincent Chen <>
Cc: Greentime Hu <>
Cc: Yoshinori Sato <>
Cc: Guan Xuetao <>
Cc: Stafford Horne <>
Cc: Jonas Bonn <>
Cc: Stefan Kristiansson <>
Cc: Ley Foon Tan <>
Cc: Richard Kuo <>
Cc: Mark Salter <>
Cc: Aurelien Jacquiot <>
Cc: Guo Ren <>
Fixes: 00bf25d6

 ("y2038: use time32 syscall names on 32-bit")
Signed-off-by: default avatarArnd Bergmann <>
parent 089cf7f6
......@@ -569,7 +569,7 @@ __SYSCALL(__NR_semget, sys_semget)
__SC_COMP(__NR_semctl, sys_semctl, compat_sys_semctl)
#if defined(__ARCH_WANT_TIME32_SYSCALLS) || __BITS_PER_LONG != 32
#define __NR_semtimedop 192
__SC_COMP(__NR_semtimedop, sys_semtimedop, sys_semtimedop_time32)
__SC_3264(__NR_semtimedop, sys_semtimedop_time32, sys_semtimedop)
#define __NR_semop 193
__SYSCALL(__NR_semop, sys_semop)
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment