From patchwork Wed Apr 25 16:02:54 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 904465 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=sourceware.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=libc-alpha-return-91839-incoming=patchwork.ozlabs.org@sourceware.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=arndb.de Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; secure) header.d=sourceware.org header.i=@sourceware.org header.b="BNIAwb2a"; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 40WQ4X3Ty6z9s0v for ; Thu, 26 Apr 2018 02:04:28 +1000 (AEST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:cc:subject:date:message-id; q=dns; s= default; b=V299A6AIfTgNuFyGw4FoNSJ34AjhhHszGICZfgYpIHtupiEPzpPAn LeFmfTDzu3gpu28Q13dBKNtUZ0FvUtbSGAk2Sj5IaoPd0v7UttdR+ExTf4pX/TSa c/wY/lXBVPdxJBP8TVBfqHXervD7/sk1EYzQTcfGkrnkwildmtIpvw= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:from:to:cc:subject:date:message-id; s=default; bh=FRCj3TRqqxWVddNP83xr0rCOM0Q=; b=BNIAwb2afzSR57l5hIxP8ziJ21Jk OHMVAgNf7FYHnxIXIExRIpAlwq7ceUNFvNDIwIbNY1hYJhIyBbZG/cZfFMRBnieS FvsuyD/Ua1xqL/FA8sxx80BTjqRGD5naUXNjKkDoUcmoRPgpVjkjvvtEdVzlIISF WvSYse8ir28XGOg= Received: (qmail 55567 invoked by alias); 25 Apr 2018 16:04:22 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 55551 invoked by uid 89); 25 Apr 2018 16:04:21 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-7.3 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_2, KAM_LAZY_DOMAIN_SECURITY, KAM_NUMSUBJECT, RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.2 spammy=Prepare X-HELO: mout.kundenserver.de From: Arnd Bergmann To: y2038@lists.linaro.org, linux-kernel@vger.kernel.org Cc: Arnd Bergmann , linux-api@vger.kernel.org, linux-arch@vger.kernel.org, libc-alpha@sourceware.org, tglx@linutronix.de, netdev@vger.kernel.org, deepa.kernel@gmail.com, viro@zeniv.linux.org.uk, albert.aribaud@3adev.fr, Peter Zijlstra , Darren Hart , "Eric W. Biederman" , Dominik Brodowski Subject: [PATCH 00/17] y2038: system calls, part 3 Date: Wed, 25 Apr 2018 18:02:54 +0200 Message-Id: <20180425160311.2718314-1-arnd@arndb.de> X-UI-Out-Filterresults: notjunk:1; V01:K0:noi8chGZ/38=:rHMh3g1K1IkDH1pq07W3R8 Q2vzbf1xLuewzTdXHBiXOwQeR5c6TzX/LSw3fIgK+uwr94udYNvERIOWL6+yBVr4JTzCDDflY OqJVK0jaF9UcLOvcTi2C5K1QTqCrfM9UxJf9FXHcyf/RBTGOZHZcgmGRPagjrh23Cr/1qrA1t MSJFPq5IJAhkCbUvBYOQyPh/clhNv2i5ZIq7lrX64iGgRgiKtr3xf+AzZXJiOIqaJLHNd0CdE U6dzefd8gp9JLGRpkt9XL0O64eWmd4v5VR1uoAfZXECOH/JJDu7GwqvAWOcik6yh5OexuiXQy mtcR6ugeo1YlyBYJiAi10FoTC2Cj2qSqvW7eejqkDMf8vdDJP/rCMyl+ZJq/4gmJ7zxHuiLcf +qHnspDjHeH/3+XhSgk6osghAfgiO/lWc0MDtYgjxLeRFzi3bad0sWn/+j4v/hRywVGeCUDa7 KMHUmFU0x/AW/vmdMG2z5NlvnFXETZRfGdZWh46RbNR6qGcFNUUmzOrm1dHgVC9tZLku3M4NZ Rw2y5U1TE+VaoRYJR7PS52AEk1zeQZmrTf8IxyKbO1uilcazHy0wwihcIT9XxqwaqCvHyRlxp 99G0rNxXjhR6vqWVlPwtBFVS+phUgJ1ZMVlMZww6skhjeckWDhaAq+9R2+xOOqzrsWFmNp1/d s6gdltqjBE2DIZNxQTPjd4vuLSxtZjzlKFWxAUP8kp80kMxp6LNYfY89eZbC3Yra8I8A= After the first timekeeping series from Deepa (merged into -tip now) and my follow-up for IPC system calls, this is a third set of system call conversions following the same principle. Most of the changes are straightforward, so I'm grouping them into a larger series even though the system calls are mostly unrelated to one another. After this series, the remaining calls that need to be changed are getrusage()/waitid(), pselect6/ppoll(), timer{,fd}_{get,set}time() and getitimer()/setitimer(). Those will be sent separately, once they are matured enough. To put the changes into perspective, a list of all system calls that require changes is available in a spreadsheet[1] and I have made another experimental patch that changes over x86[2] and arm[3] to actually use them. Please review! Arnd [1] https://docs.google.com/spreadsheets/d/1HCYwHXxs48TsTb6IGUduNjQnmfRvMPzCN6T_0YiQwis [2] https://git.kernel.org/pub/scm/linux/kernel/git/arnd/playground.git/commit/?h=y2038-next&id=2174e03cd47384f30dc522f173f36c0d72cfedd7 [3] https://git.kernel.org/pub/scm/linux/kernel/git/arnd/playground.git/commit/?h=y2038-next&id=ba9a341eff2b13a8e25b5d42b3035b1c1dbfeacf Arnd Bergmann (17): y2038: compat: Move common compat types to asm-generic/compat.h y2038: Remove newstat family from default syscall set y2038: Remove stat64 family from default syscall set asm-generic: Remove unneeded __ARCH_WANT_SYS_LLSEEK macro asm-generic: Remove empty asm/unistd.h y2038: Change sys_utimensat() to use __kernel_timespec y2038: Compile utimes()/futimesat() conditionally y2038: utimes: Rework #ifdef guards for compat syscalls y2038: futex: Move compat implementation into futex.c y2038: futex: Add support for __kernel_timespec y2038: Prepare sched_rr_get_interval for __kernel_timespec y2038: aio: Prepare sys_io_getevents for __kernel_timespec y2038: socket: Convert recvmmsg to __kernel_timespec y2038: socket: Add compat_sys_recvmmsg_time64 y2038: signal: Change rt_sigtimedwait to use __kernel_timespec y2038: Make compat_sys_rt_sigtimedwait usable on 32-bit y2038: signal: Add compat_sys_rt_sigtimedwait_time64 Cc: linux-api@vger.kernel.org Cc: linux-arch@vger.kernel.org Cc: libc-alpha@sourceware.org Cc: tglx@linutronix.de Cc: netdev@vger.kernel.org Cc: deepa.kernel@gmail.com Cc: viro@zeniv.linux.org.uk Cc: albert.aribaud@3adev.fr Cc: Peter Zijlstra Cc: Darren Hart Cc: "Eric W. Biederman" Cc: Dominik Brodowski arch/alpha/include/asm/unistd.h | 2 + arch/arc/include/uapi/asm/unistd.h | 1 + arch/arm/include/asm/unistd.h | 4 +- arch/arm64/include/asm/compat.h | 20 +-- arch/arm64/include/asm/unistd.h | 2 +- arch/arm64/include/uapi/asm/unistd.h | 1 + arch/c6x/include/uapi/asm/unistd.h | 1 + arch/h8300/include/uapi/asm/unistd.h | 1 + arch/hexagon/include/uapi/asm/unistd.h | 1 + arch/ia64/include/asm/unistd.h | 3 + arch/m68k/include/asm/unistd.h | 2 +- arch/microblaze/include/asm/unistd.h | 2 +- arch/mips/include/asm/compat.h | 22 +--- arch/mips/include/asm/unistd.h | 3 +- arch/nds32/include/uapi/asm/unistd.h | 1 + arch/nios2/include/uapi/asm/unistd.h | 1 + arch/openrisc/include/uapi/asm/unistd.h | 1 + arch/parisc/include/asm/compat.h | 18 +-- arch/parisc/include/asm/unistd.h | 3 +- arch/powerpc/include/asm/compat.h | 18 +-- arch/powerpc/include/asm/unistd.h | 3 +- arch/s390/include/asm/compat.h | 18 +-- arch/s390/include/asm/unistd.h | 3 +- arch/sh/include/asm/unistd.h | 2 +- arch/sparc/include/asm/compat.h | 19 +-- arch/sparc/include/asm/unistd.h | 3 +- arch/unicore32/include/uapi/asm/unistd.h | 1 + arch/x86/include/asm/compat.h | 19 +-- arch/x86/include/asm/unistd.h | 3 +- arch/xtensa/include/asm/unistd.h | 2 +- fs/aio.c | 4 +- fs/read_write.c | 2 +- fs/stat.c | 3 + fs/utimes.c | 59 +++++---- include/asm-generic/compat.h | 24 +++- include/asm-generic/unistd.h | 13 -- include/linux/compat.h | 12 +- include/linux/compat_time.h | 5 + include/linux/futex.h | 8 -- include/linux/socket.h | 19 ++- include/linux/syscalls.h | 23 ++-- include/uapi/asm-generic/unistd.h | 2 + kernel/Makefile | 3 - kernel/futex.c | 207 +++++++++++++++++++++++++++++-- kernel/futex_compat.c | 202 ------------------------------ kernel/sched/core.c | 4 +- kernel/signal.c | 68 ++++++++-- kernel/sys_ni.c | 1 + net/compat.c | 16 +-- net/socket.c | 55 ++++++-- 50 files changed, 456 insertions(+), 454 deletions(-) delete mode 100644 include/asm-generic/unistd.h delete mode 100644 kernel/futex_compat.c