From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751092AbeAPPSm (ORCPT + 1 other); Tue, 16 Jan 2018 10:18:42 -0500 Received: from mail-oi0-f68.google.com ([209.85.218.68]:44175 "EHLO mail-oi0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750752AbeAPPSj (ORCPT ); Tue, 16 Jan 2018 10:18:39 -0500 X-Google-Smtp-Source: ACJfBovo6Xgi6PaPplq9SoC00vsrK9bJIICRm/RTSLTBFLSbVXoUQ5muUvbzhoHdQIcEGkNK09nTsf4PXotb/CTe71c= MIME-Version: 1.0 In-Reply-To: <20180116021818.24791-1-deepa.kernel@gmail.com> References: <20180116021818.24791-1-deepa.kernel@gmail.com> From: Arnd Bergmann Date: Tue, 16 Jan 2018 16:18:37 +0100 X-Google-Sender-Auth: RJCEzeST_QtE5ITgzNn3zM3ATVY Message-ID: Subject: Re: [PATCH v3 00/10] posix_clocks: Prepare syscalls for 64 bit time_t conversion To: Deepa Dinamani Cc: Thomas Gleixner , John Stultz , Linux Kernel Mailing List , y2038 Mailman List , Arnaldo Carvalho de Melo , Benjamin Herrenschmidt , Christian Borntraeger , Catalin Marinas , Chris Metcalf , cohuck@redhat.com, David Miller , Helge Deller , devel@driverdev.osuosl.org, gerald.schaefer@de.ibm.com, gregkh , Heiko Carstens , Jan Hoeppner , "H. Peter Anvin" , "James E.J. Bottomley" , Julian Wiedmann , Linux API , linux-arch , "open list:RALINK MIPS ARCHITECTURE" , Parisc List , linuxppc-dev , linux-s390 , Mark Rutland , Ingo Molnar , Michael Ellerman , oberpar@linux.vnet.ibm.com, oprofile-list@lists.sf.net, Paul Mackerras , Peter Zijlstra , Ralf Baechle , Steven Rostedt , Robert Richter , Martin Schwidefsky , sebott@linux.vnet.ibm.com, sparclinux , Stefan Haberland , Ursula Braun , Will Deacon , "the arch/x86 maintainers" Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: On Tue, Jan 16, 2018 at 3:18 AM, Deepa Dinamani wrote: > The series is a preparation series for individual architectures > to use 64 bit time_t syscalls in compat and 32 bit emulation modes. > > This is a follow up to the series Arnd Bergmann posted: > https://sourceware.org/ml/libc-alpha/2015-05/msg00070.html [1] > > Big picture is as per the lwn article: > https://lwn.net/Articles/643234/ [2] > > The series is directed at converting posix clock syscalls: > clock_gettime, clock_settime, clock_getres and clock_nanosleep > to use a new data structure __kernel_timespec at syscall boundaries. > __kernel_timespec maintains 64 bit time_t across all execution modes. > > vdso will be handled as part of each architecture when they enable > support for 64 bit time_t. > > The compat syscalls are repurposed to provide backward compatibility > by using them as native syscalls as well for 32 bit architectures. > They will continue to use timespec at syscall boundaries. > > CONFIG_64_BIT_TIME controls whether the syscalls use __kernel_timespec > or timespec at syscall boundaries. > > The series does the following: > 1. Enable compat syscalls on 32 bit architectures. > 2. Add a new __kernel_timespec type to be used as the data structure > for all the new syscalls. > 3. Add new config CONFIG_64BIT_TIME(intead of the CONFIG_COMPAT_TIME in > [1] and [2] to switch to new definition of __kernel_timespec. It is > the same as struct timespec otherwise. > 4. Add new CONFIG_32BIT_TIME to conditionally compile compat syscalls. This looks all good to me. I think we should have this included in linux-next as soon as possible, but this probably means after -rc1 at the current point, since it's a bit late for 4.16. I'll pick up the series into my randconfig build tree again to find possible build time regressions. Otherwise the way I'd stage it out is to put it into my y2038 branch after -rc1 and then send a pull request to Thomas for the tip tree a week later. It seems unlikely that any major problems come up, so we could plan to address additional requests for changes by adding commits on top once it's in linux-next. Arnd