From patchwork Fri Apr 26 14:25:04 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 162918 Delivered-To: patch@linaro.org Received: by 2002:a02:c6d8:0:0:0:0:0 with SMTP id r24csp814422jan; Fri, 26 Apr 2019 07:25:48 -0700 (PDT) X-Google-Smtp-Source: APXvYqx7Dp1wuUNGw2OTjWEpwTmBc2ucLPBbyY78p+nKNU+xGdZoqaWOszZGhwqUs6rcW28Btjnm X-Received: by 2002:a17:902:2f:: with SMTP id 44mr46304707pla.137.1556288748899; Fri, 26 Apr 2019 07:25:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1556288748; cv=none; d=google.com; s=arc-20160816; b=ps2sb45vQVPA25yjWNiDjnToDhZjYwgos8Iwjs/0OXBgkTlt0eKXXh5eOKKN1qO9B6 J60cO6zzFAnPxfPaIPLSn8d1UZP6c4BPrnqoSKsxjiwMAo6nbJkCtdV39vjKIUAShfzp vxPPwoaeA7vegX4jwOjlfxoVHXkzI6tslTw/HBmVyRfTgOqIBsz9DmP77aHbXaHacCk6 UjjYjta5s/FTQEpZQm0FXUl1cjIJeQiyRyHUj9Z9Z7M5M/thzIhxmR5lCyLbVpyy0ShR MjYecYX6H5KXwdZATAFjxXwrZEAqt3I2pePAMgZLwuNg6it0nSFt7LNCgDqSSR+PNU22 hQzw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from; bh=7uTGctWVk16IKeJtHknTgAF17YoZGFCLdDdh8Yxlrgo=; b=veTumrAihjEbbSVuN1t7eI6E7ZwPtUL5KS7hdBQju3KKUnaYe56olMyPhAO5Aod2y4 cELTEqUIY2npnwdOOE38gle3cFWXgnSuubOny+iSI1TbWKdT/XWC2v7dziE787D1yY/j veZi5FNv04wERx6Z7UBMXOgv4vmQ9/JGbea2+GX0tDNhitYumhAaC2U6+6IZhCmpkrMQ kSPZEQhCpiS3XSlWcSkfdEn27CrTbJpxhIjzI0IJXXu1dlgGBZFl0aGf+LwOMwu5dNTH RXCdGoX8ojJv/2Ihd/CVUQ1TycnxxdrPKpmu4HQ7O/6gW2cSrPhlVoldqYhCDD/qKoDY mb9g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v21si25193314plo.34.2019.04.26.07.25.48; Fri, 26 Apr 2019 07:25:48 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726475AbfDZOZr (ORCPT + 30 others); Fri, 26 Apr 2019 10:25:47 -0400 Received: from mout.kundenserver.de ([212.227.126.134]:34199 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726120AbfDZOZr (ORCPT ); Fri, 26 Apr 2019 10:25:47 -0400 Received: from threadripper.lan ([149.172.19.189]) by mrelayeu.kundenserver.de (mreue012 [212.227.15.129]) with ESMTPA (Nemesis) id 1MbTCr-1gmtxm3d05-00buge; Fri, 26 Apr 2019 16:25:35 +0200 From: Arnd Bergmann To: Thomas Gleixner Cc: Joseph Myers , libc-alpha@sourceware.org, linux-api@vger.kernel.org, linux-kernel@vger.kernel.org, Deepa Dinamani , Arnd Bergmann , Lukasz Majewski , Stepan Golosunov Subject: [PATCH 1/2] y2038: make CONFIG_64BIT_TIME unconditional Date: Fri, 26 Apr 2019 16:25:04 +0200 Message-Id: <20190426142531.1378357-1-arnd@arndb.de> X-Mailer: git-send-email 2.20.0 MIME-Version: 1.0 X-Provags-ID: V03:K1:fIJzz9wj+ao9HQhnAv2jIWZsWFqfvgw+Oy7O3nycVovvV0MS3Nl obIIVIsSedgGiymLYKpYSUVpHoc0Xcjsn53G1AvEPhlQsm2EHLdpnRl0pg0Dxmn/zokJKiI +AeQdQ0tz7vq+N4Kmh27Ieor82N4OMHIeaKqP6oD8uhU93QAXEACHahCYcwkCVoYvqSYm7O uwPHbqqhCC3dpx1MNU4yw== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1; V03:K0:C4fKpd5A+4U=:odrg9PhoL/1HJOZeNkOhyH O5M1WrSt4d+MH2c9+JEu1wd/Z5pn2eEOsryNN3uybDS9OxybN0RXnwcaigQuLyec8Gus1fvhP MYdgH0vV2ziysm8z86qu/QN4EjMrnxFJZ5FtfFyQ3HRuNESSvCJb0UbM/0geqZNXChsafkWTn KGvj8uMgqByj4Ws6TqLgtYtYy1CLa7MngzGPozURxTXR+Cxw1KPrCFV5vuqDfSErTb4Ewp9WC Dmlb2n7zt7hYgMg8a90UZKnTD7+Wzek90pVVLE0UXYluR/kbDPk0aXHR/0pEj6tnUX/r/R5MN H2CLQ/ZNtptifaq36R3fN28U8uXYlbG34Y/cM0ssKRIIILtL2JxRTwzq6uDtKowKdEB9LHVnb 7/UvSI4/R92K9gSW6NXyRkONVFS+5ZQJNuzVb6wphWoD3xkF6/g/2+jxcrJmjob8Ncqicowv9 iVeMXCMjRiIOsC2ILZJcGFocNyBWSLO+rTO8Ec+I/yBOzvivNPOqu3jRMuMW6k4LLDIEtBfn5 aTRqVND8JstKCpCGAXv5//LrHHW3kUSatMukMmGHTe2GJDDJ/QflFs704ninGzLLNZfhDcLFq GN5FxvBhne8zC0kkcwzB5NxItoWuGTyt4SZHulZOh30vBrv9K+vDdRhRoSeB3A7jhNNd4UJTQ O9GjSTI4dvgRtgr73d/g+LmVdnDWkZ4juE2zwDlztY1qCe5bwJv0t7JV2VL/yiPCv3xFw8EGy 6EOZryWlAU7I+t20v7gKmC/tDbQuXPGr3cMYrw== Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org As Stepan Golosunov points out, we made a small mistake in the get_timespec64() function in the kernel. It was originally added under the assumption that CONFIG_64BIT_TIME would get enabled on all 32-bit and 64-bit architectures, but when I did the conversion, I only turned it on for 32-bit ones. The effect is that the get_timespec64() function never clears the upper half of the tv_nsec field for 32-bit tasks in compat mode. Clearing this is required for POSIX compliant behavior of functions that pass a 'timespec' structure with a 64-bit tv_sec and a 32-bit tv_nsec, plus uninitialized padding. The easiest fix for linux-5.1 is to just make the Kconfig symbol unconditional, as it was originally intended. As a follow-up, we should remove any #ifdef CONFIG_64BIT_TIME completely. Link: https://lore.kernel.org/lkml/20190422090710.bmxdhhankurhafxq@sghpc.golosunov.pp.ru/ Cc: Lukasz Majewski Cc: Stepan Golosunov Signed-off-by: Arnd Bergmann --- Please apply this one as a bugfix for 5.1 --- arch/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.20.0 diff --git a/arch/Kconfig b/arch/Kconfig index 33687dddd86a..9092e0ffe4d3 100644 --- a/arch/Kconfig +++ b/arch/Kconfig @@ -764,7 +764,7 @@ config COMPAT_OLD_SIGACTION bool config 64BIT_TIME - def_bool ARCH_HAS_64BIT_TIME + def_bool y help This should be selected by all architectures that need to support new system calls with a 64-bit time_t. This is relevant on all 32-bit