lkml.org 
[lkml]   [2019]   [Sep]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.2 35/85] ipc: fix semtimedop for generic 32-bit architectures
    Date
    From: Arnd Bergmann <arnd@arndb.de>

    commit 78e05972c5e6c8e9ca4c00ccc6985409da69f904 upstream.

    As Vincent noticed, the y2038 conversion of semtimedop in linux-5.1
    broke when commit 00bf25d693e7 ("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: Vincent Chen <deanbo422@gmail.com>
    Cc: stable@vger.kernel.org
    Cc: Vincent Chen <deanbo422@gmail.com>
    Cc: Greentime Hu <green.hu@gmail.com>
    Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
    Cc: Guan Xuetao <gxt@pku.edu.cn>
    Cc: Stafford Horne <shorne@gmail.com>
    Cc: Jonas Bonn <jonas@southpole.se>
    Cc: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
    Cc: Ley Foon Tan <lftan@altera.com>
    Cc: Richard Kuo <rkuo@codeaurora.org>
    Cc: Mark Salter <msalter@redhat.com>
    Cc: Aurelien Jacquiot <jacquiot.aurelien@gmail.com>
    Cc: Guo Ren <guoren@kernel.org>
    Fixes: 00bf25d693e7 ("y2038: use time32 syscall names on 32-bit")
    Signed-off-by: Arnd Bergmann <arnd@arndb.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    include/uapi/asm-generic/unistd.h | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- a/include/uapi/asm-generic/unistd.h
    +++ b/include/uapi/asm-generic/unistd.h
    @@ -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)
    #endif
    #define __NR_semop 193
    __SYSCALL(__NR_semop, sys_semop)

    \
     
     \ /
      Last update: 2019-09-18 08:30    [W:4.125 / U:0.292 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site