Received: by 2002:ac0:a594:0:0:0:0:0 with SMTP id m20-v6csp996273imm; Tue, 15 May 2018 12:13:01 -0700 (PDT) X-Google-Smtp-Source: AB8JxZrzAvQFYBdv9pRjbv3eEzGLZmD97icUfX5UsN0NHkd+t7847ajKaaTiexiTC6paNZOwXmwa X-Received: by 2002:a17:902:bd46:: with SMTP id b6-v6mr15760965plx.170.1526411581338; Tue, 15 May 2018 12:13:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1526411581; cv=none; d=google.com; s=arc-20160816; b=Iw3FTOxUTgyvywVbviqdIvr84orS4Wc1z2btCumkD8VJOa9cMVKaI4cW0n6MVewyS4 uLiTH+1YJNMit+sMYmSNZC+0y2I9NKDylXY7OnrurTGcaCqtrHPe435K2uluRUIzafk5 hNBLJqyfMod8Koqvd04ahqcB6/a+3/93fTjyLaHuIZU1YVEn6HnB2XvoKg9fUi9anBqH 45F0fV1zCzT5RPULP2JmUbB+OOm0qEwGS+Wm7rryf4C/H1AH2AkDfb9WAnP17n4hRVD4 6Ebbg7HDMMnGUIloVxNkjk1FwCp/dTdqlCfQsIJqtTk0+lV6zNEVIfSw5rW8s+Y3BDh1 ImCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:spamdiagnosticmetadata :spamdiagnosticoutput:mime-version:message-id:date:subject:cc:to :from:dkim-signature:arc-authentication-results; bh=KBYa3FC1Jkra+Q/iDe9tyRJWOoi8GVuyt91wvS/OAV0=; b=sZEah78Vned8cnCK5tHxdOKbVTogQonGiT3bPNSVgfecckQeAqC9m3f7rN2DlZ2nWd hS6FM8/7mQMfMwkLMFINwRO9qe+GKSVhW73n1VofzEjK3ebHKCJhi4eJUpHQhG+eXg8b 2PAwcOLGVAR+Mu3PuyEIW7Mw9ohXPXKPRLK5UCt89EdufXWvtSaxLigxk/GJh5BWLDwd eaVtFG6Pt9XuYbVUfWDHozjg1NWpcDW85kk2J7Nk0C7j6OnYqJMBwSV/8+MLMJnadTSE oKEUHuH7psjVWuJmPcHOzx4sz5A09S/hOr7natMwsKgmJlIx4fHW09kTftYhGia0lpdE vw8w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@CAVIUMNETWORKS.onmicrosoft.com header.s=selector1-cavium-com header.b=V7fkWQOv; 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 126-v6si535136pgc.535.2018.05.15.12.12.46; Tue, 15 May 2018 12:13:01 -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; dkim=pass header.i=@CAVIUMNETWORKS.onmicrosoft.com header.s=selector1-cavium-com header.b=V7fkWQOv; 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 S1752351AbeEOTMg (ORCPT + 99 others); Tue, 15 May 2018 15:12:36 -0400 Received: from mail-sn1nam01on0057.outbound.protection.outlook.com ([104.47.32.57]:50176 "EHLO NAM01-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751219AbeEOTMc (ORCPT ); Tue, 15 May 2018 15:12:32 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=KBYa3FC1Jkra+Q/iDe9tyRJWOoi8GVuyt91wvS/OAV0=; b=V7fkWQOvdqK0H0k0cAuhhqVicdoakzvw+FW3/seq5jQW2kXX2k5rWxlwujPUFSEjhM0yj/M7CgzeXuO7M5qLcBK9+T+cxtM/GsnbXhxFux3QyPYXOYahn4d0gimgYkV0ohOSeP2Olwd2zbDMOEopsRL2ZqavnAOUvhRq6mycaDk= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Yuri.Norov@cavium.com; Received: from localhost (176.59.40.107) by SN6PR07MB4383.namprd07.prod.outlook.com (2603:10b6:805:58::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.755.16; Tue, 15 May 2018 19:12:27 +0000 From: Yury Norov To: Catalin Marinas , Arnd Bergmann , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, linux-arch@vger.kernel.org, linux-api@vger.kernel.org Cc: Yury Norov , Adam Borowski , Alexander Graf , Alexey Klimov , Andreas Schwab , Andrew Pinski , Bamvor Zhangjian , Chris Metcalf , Christoph Muellner , Dave Martin , "David S . Miller" , Florian Weimer , Geert Uytterhoeven , Heiko Carstens , James Hogan , James Morse , Joseph Myers , Lin Yongting , Manuel Montezelo , Mark Brown , Martin Schwidefsky , Maxim Kuvyrkov , Nathan_Lynch , Philipp Tomsich , Prasun Kapoor , Ramana Radhakrishnan , Steve Ellcey , Szabolcs Nagy , Zhou Chengming Subject: [PATCH v9 00/24] ILP32 for ARM64 Date: Tue, 15 May 2018 22:11:50 +0300 Message-Id: <20180515191214.5045-1-ynorov@caviumnetworks.com> X-Mailer: git-send-email 2.17.0 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [176.59.40.107] X-ClientProxiedBy: AM4PR0101CA0068.eurprd01.prod.exchangelabs.com (2603:10a6:200:41::36) To SN6PR07MB4383.namprd07.prod.outlook.com (2603:10b6:805:58::14) X-MS-PublicTrafficType: Email X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(7020095)(4652020)(4534165)(4627221)(201703031133081)(201702281549075)(5600026)(2017052603328)(7153060)(7193020);SRVR:SN6PR07MB4383; X-Microsoft-Exchange-Diagnostics: 1;SN6PR07MB4383;3:qEfO/TrW3taIAsNUOkdf2rftv0Ez3mK+bdOXpADS9jWkmkg57Y1PJhZsNhpYmyH3lkkEYsGHE3tWdVw4K8q0io9f9+LtuRKZXrWSRMETfzCkkzeS3W2eacEWyDkEYNReQG23+6suQZy2ZVvYN3aM1gmAFRK1UxkAQNtNbZ2glzbB5L+gHvSoVOpSHvi/zKy0mTqo81K2SxzT2i4qgPTym/NTPaYLoRC8FrT1jFZr+YcY/tFTiYYh7kahh4rlhnVV;25:lPnG+7IRjM1wN77OE0gp9g0XzEk9vDB1qr7//xCkJXimjtITUCIoX55pQM++98aR8xV9XAnB2ckqGoZ0QTET7ImzI2tnWwyI0uDgT/w44L2m8DWRkSgsngrr8fXVbB2JMRQPKws78632xGFlnIQPvmohf5cL/ghEOAz45t4tPc9pavnztMNUzNlHpgyMj/5K2oCdfnbnBweYZQwta9dKN+pjTGlkuduvi9S3OqgFIpsADTT1jXbuoM3jbRAoQt0Wwt7nvkejJu5L17EzK8NZiri8rw2d2riS47q3y5MkpJGpUw+jPpHwlmifzRP1iCem47HPe6cz79sAufk2JqRAGg==;31:/zJS2zsF4U4OxE3PKVtpE5XGNZfV4bMmydYDUGpKItfDeWA1C7NPCnPFjzjETKhZmSszrDlz3gjYfJnDH6oCuQ/NPC3cT2IcIfoTzuvGe/5CgoR3DtkwWDxpzblDaJpAT4vXnlbR00mpQ8ouW1MO+J3ea6JzkVEUzToEkg0kiwZaNSkBHQ65PQJLCJq0/Pt4Y5n5r4MFbkXLFywHtnTcnXM1Zq/T6xoJ4Fu9dKWvCJY= X-MS-TrafficTypeDiagnostic: SN6PR07MB4383: X-Microsoft-Exchange-Diagnostics: 1;SN6PR07MB4383;20:obrwVT12NHHTnlH+WXm3cu2WEVwJVfZFROiPkbwLcJ36RhhoJzCDxgYS5aKo5eUC2VdKrj6xo+bjFOhrK0Ys6+Fu6L5j1zsY6mUQaMUczg8sC9FjbStmO17/toiwQxsAkxESN5C/zqhzqAbnKgLQqWi230tR8KLzF1Ip004f8Pjd5pQ71+7q6GkraFUeaSGHwF3rPgMXc3oqtkg7m1Fae9IhV5iLEzLXjfJVvhv9iCMlVtiNcmEbjeHU8zxULuLpOjT/gZq1jz64iPysXhIAkPYwFzAfsqQRqUwDEcIWXNT+OZRM+EeqHtr5e0bSRUGjw1rnAA0zM1S8nalVvEXU1RTRzcIgH0hsr/SDsGrcuYYXvvsS7fwaOvBq3/nMrDsGgvppfagYD63ixcIrc7ix6IhWqHVom6KmtIKfVCZK+98FU9m2TsKLtA1Z+aVCeRIn9eMhoyjvU8DXGWm0hRAX7sN3rZR8vFXyJnUkjiO8dahsZ62KzhYrVf2U5hPt1JNLcNJUV6TRw5REiJkfNKg3gQkXWZJvKRLAbcPg6cyf/3kx+VoZYdZ/i6K9efdTlF44nEPpl6B6LFHOLleZ8m2ga93irtbD1wuQiRY0Bzjf8tA=;4:VixCXwwyIigjWI3ZGx2XO63F9kQJmelQonyqIQqBEQFRN0/HfUm/MkupTYRdmq+NAst6IrqfpxAr8EiiKbKbrdFT/YHxQ4I5AVcQ2vWv8RKQdJ51BYAk0dehEC0stb6NDeYPgtRakt25Oh6QiMBsVu5h/RgCXzd/v27LfuoJcwWAIxF6eMlzbuQ2i9ZgC6ccnU6tib/lAcmeKJvu2GiKWh9A902FAKSWkqjPIZVqwsy7LF4J0aXj/FRO9VOqrhYHFP0IhWNMao5rPmwcCbgw4vFkSKt/W17fLmv2gn+PRZJYmUHI9zEXNq+crbJv6wmy X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(166708455590820); X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(3002001)(93006095)(10201501046)(3231254)(944501410)(52105095)(149027)(150027)(6041310)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011);SRVR:SN6PR07MB4383;BCL:0;PCL:0;RULEID:;SRVR:SN6PR07MB4383; X-Forefront-PRVS: 0673F5BE31 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6069001)(39380400002)(376002)(346002)(396003)(39860400002)(366004)(189003)(199004)(478600001)(16586007)(6496006)(7406005)(316002)(72206003)(966005)(7416002)(47776003)(7736002)(6486002)(305945005)(25786009)(386003)(59450400001)(66066001)(54906003)(26005)(97736004)(110136005)(52116002)(51416003)(16526019)(5660300001)(186003)(36756003)(486006)(4326008)(1076002)(39060400002)(3846002)(50466002)(6116002)(6306002)(42882007)(2906002)(48376002)(6666003)(50226002)(68736007)(2616005)(8936002)(106356001)(476003)(53936002)(956004)(105586002)(81166006)(81156014)(76506005)(8676002);DIR:OUT;SFP:1101;SCL:1;SRVR:SN6PR07MB4383;H:localhost;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;SN6PR07MB4383;23:DkiJD3khCScsbAWmaYUgCY9naNcyiAnDC0Zff9L0w?= =?us-ascii?Q?CEjJ8REOnrMZ5yUoUy6MfQPyUykmyTK31cDh4x8+54YECTphEIZJYM4CKEbv?= =?us-ascii?Q?wgYEzZz1bsM0gNz7zBJK9TLh9YO7Dd1CeBrDGHFt4bVhTpTR1avTyiVf3Yul?= =?us-ascii?Q?cLI/SJfc0WggzUGkHQZ7Os5/W2E6jsn0ZOgoGTENiFz1gWQbEiZSXMe+Hm+k?= =?us-ascii?Q?udWIH5UbKtIteBUqCNIE3cd+aBs+MWC6KDC/WenTsVyDYJo2WoVQDCH26q4p?= =?us-ascii?Q?yHGMWfaVcrUHTNUWxR1drMh700ZY1NZSILtxqzOClAqYXFg5vKgSvnzjmNpJ?= =?us-ascii?Q?sIdkHUpFamiPTm10JGl+kmbrPnXunfrC2Rqi2mGhAP87gZXICIOKyUeTil9L?= =?us-ascii?Q?QdW/MyYK8u5NOtokcO+SmdEQfnhvC/22N72Ai+5ZQccRM8CCAae1sAHAjvaW?= =?us-ascii?Q?bRNRaYSuL7KqD35YjTvKTcmPRtU1rByBS1SaLIxLmPnvKxFWOtfniW6HARht?= =?us-ascii?Q?B0weA9fBc48i9ZNeW0mi9h71XVxhGsSZoIz+Lso9hgga9DZBqhi6rQ0Y7p5I?= =?us-ascii?Q?1K277k4SYOySJzaoRIdrDiFGw+oEgPp/TWOpktHRScXzZ9X3EWPISsWkVVll?= =?us-ascii?Q?OlFGxEAN1ur3NDs7YFHQpulFuKCpRpSxovyrGQAyh3rJ1+C1qzAX0+cuGU0D?= =?us-ascii?Q?qfRWy/flbAIvrJVkiO/7NuMxIp9cQIdW5Rzd9mNw8wdoOX2Gy/4np/Kno6YX?= =?us-ascii?Q?z54T3YpiCGqbZnA0fMo68ioD7YUEGs5ZMjDplhIOGNnjpVBpvbrTLYNhy2Mg?= =?us-ascii?Q?5gm9T/g94RqxhvWlzBJ3dL5ynMA6gCm3+NfTviezhJu5/fXZCFFkiSSs88ub?= =?us-ascii?Q?kgxaTxzHTsSJRzA0y1UiPtJgeCvAFJTK7e0lYERIXdgzwuo92it+az5fS+rI?= =?us-ascii?Q?qnXRA8wq34SDbP259KsXqAypGMizBwd8Q7nGdHJB0Uv/wK13d3IKqkC4qVq4?= =?us-ascii?Q?4BZ9Bqqgs7fdVO577V7gn1BKW907RjnYxHoearUpPP1MGEMm210j9xL7mf1C?= =?us-ascii?Q?zxRT9zRbhetjtLSECW364IilmuhNVXBxOlneI2i5uzeRiwWw0NJtlcDtr66w?= =?us-ascii?Q?7qxA6rnK224AiVLHSf+aCkzYBU3dOX23l568hLrPH09MYPDx4Rnv+ROPND8/?= =?us-ascii?Q?+DsJD10mR2UBcTzlvFEaKBdVnYAmLPFOkargFaijs5JTEG7zOZ2W08xrkYO2?= =?us-ascii?Q?NZR96ZyN1OMx66ljIz+/vJEMHNLVqh5jwiwnwmIdh0O4IqxOAd/eIRW0QGuS?= =?us-ascii?Q?8bDJeweZkmx9ytarVc7J0M/nF3/uZVZ8dqOWblY1mSP?= X-Microsoft-Antispam-Message-Info: ++Mb/H0NbU3mjgaCUz+rqce7g51JXjon7M31vzL2oqQP0iT0ysYOIuPZxiJLjoJtIMB80gSrRcE9hWTPJB00DDJ/vCjhhYiDDPi8qToyeCuN2/dFuwzH4M3/RZ9s7osZvCpbdGYMVyIOcSPof1FUeatRs28Zdaqtf87CBxeHOSXcbz+PFW5JNW3h07MYoEol X-Microsoft-Exchange-Diagnostics: 1;SN6PR07MB4383;6:McszboKb4UBWDkVIxuqFqwUVNF7r7vkfE+QZO08p30eJWdT7PVbWN99eAfWWhL5g66uUO1gvIIGUR4KzyJbohQPEQHwcKIkL+YmOLo4jkEwObczm/KaTm5pl7Is6YUpq4N+h+Qf4QlNYZqv5irJymb9i8DtI0D2ZYT4AB2G8R4GXoz6zFi5lnbe3V69pGc40XeArJChrorLpwaXZ8mnA+3xCAxAKVTNow+7zfjracOWmXal/weBWPRGlOzQSJIlfstsegeDpyZd8c5GUqJL/2MRey+FfS/kmCZRhch0+Qd7oPL81EE4Hq1znUq38pGjEyBlT/Lp8uCfVfizsgai32w40yp6GbkrdnrDd6QSprUx+G2KCBP4qSZZXcrYl3DxX7IJZPHkUZuwVcjR6H1pilOu+vZ202H+ZIaSHEnLvmfpG7kyzfqGKeFIJgL+TYxxHDIqeS7EfMj6yaffCFnRZpw==;5:ihpwM12pXOdqZf/9/X1msB6UG4GabPGS0HANhWxeg8oVSNO1C2Yk/jA8PWuEF2hzZKGUYqqDO6my4HckjCdsYmfJOZom7pIenFC75TaKI59SXZnSGZT00HCYjOPw2hmLlG3jhcnqeYgUlBa51hZTd09tHfkr7A7GVouenJBkEkA=;24:AfBylipBtF2K6n8HjZCiML3hfhx/TsIdgATA3cZbKAMq6n7CVYB33P/12v6ZiA5VMyc/iMSbNMXtxrHHc0p0BumsRuTLvJHX5myuHi3UA+w= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;SN6PR07MB4383;7:cKisIRzi9tUrQxP5/rHTt8xsbyghYCphbn9rrLqKgVG/mM+iH3SKKZVDWNJboVHNwfeK36t0rHqMw2a8EaMbPcQTn0+RN9WToffyyLmlXlQrcKzonehQLVsN82a6NfRRUlyhch7A8jdCqH+q7MmS7oVFmagfZ1MGeOhaP/GtvTRLxFRe7wDHENZZav6p0a4TvxTj88Clo8Spx0VW0YSoLkpHllnaDrKEvM4gkdOo8RvmcHzH2jKsmX8pGBHMTzq6 X-MS-Office365-Filtering-Correlation-Id: 4ffd7743-20d7-4bf2-839b-08d5ba97ccec X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 May 2018 19:12:27.7735 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4ffd7743-20d7-4bf2-839b-08d5ba97ccec X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 711e4ccf-2e9b-4bcf-a551-4094005b6194 X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN6PR07MB4383 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This series enables AARCH64 with ILP32 mode. As supporting work, it introduces ARCH_32BIT_OFF_T configuration option that is enabled for existing 32-bit architectures but disabled for new arches (so 64-bit off_t userspace type is used by new userspace). Also it deprecates getrlimit and setrlimit syscalls prior to prlimit64. Based on kernel v4.16. Tested with LTP, glibc testsuite, trinity, lmbench, CPUSpec. This series on github: https://github.com/norov/linux/tree/ilp32-4.16 Linaro toolchain: http://snapshots.linaro.org/components/toolchain/binaries/7.3-2018.04-rc1/aarch64-linux-gnu_ilp32/ Debian repo: http://people.linaro.org/~wookey/ilp32/ OpenSUSE repo: https://build.opensuse.org/project/show/devel:ARM:Factory:Contrib:ILP32 Changes: v3: https://lkml.org/lkml/2014/9/3/704 v4: https://lkml.org/lkml/2015/4/13/691 v5: https://lkml.org/lkml/2015/9/29/911 v6: https://lkml.org/lkml/2016/5/23/661 v7: https://lkml.org/lkml/2017/1/9/213 v8: https://lkml.org/lkml/2017/6/19/624 v9: - rebased on top of v4.16; - signal subsystem reworked to avoid code duplication, as requested by Dave Martin (patches 18 and 20); - new files introduced in series use SPDX notation for license; - linux-api and linux-arch CCed as the series changes kernel ABI; - checkpatch and other minor fixes. Andrew Pinski (4): arm64: rename COMPAT to AARCH32_EL0 in Kconfig arm64:uapi: set __BITS_PER_LONG correctly for ILP32 and LP64 arm64: ilp32: add sys_ilp32.c and a separate table (in entry.S) to use it arm64:ilp32: add ARM64_ILP32 to Kconfig Catalin Marinas (1): arm64: ilp32: Make the Kconfig option default y Dave Martin (1): arm64: signal: Make parse_user_sigframe() independent of rt_sigframe layout James Morse (1): ptrace: Add compat PTRACE_{G,S}ETSIGMASK handlers Philipp Tomsich (1): arm64:ilp32: add vdso-ilp32 and use for signal return Yury Norov (16): compat ABI: use non-compat openat and open_by_handle_at variants 32-bit userspace ABI: introduce ARCH_32BIT_OFF_T config option asm-generic: Drop getrlimit and setrlimit syscalls from default list thread: move thread bits accessors to separated file arm64: ilp32: add documentation on the ILP32 ABI for ARM64 arm64: rename functions that reference compat term arm64: introduce is_a32_task and is_a32_thread (for AArch32 compat) arm64: ilp32: add is_ilp32_compat_{task,thread} and TIF_32BIT_AARCH64 arm64: introduce binfmt_elf32.c arm64: change compat_elf_hwcap and compat_elf_hwcap2 prefix to a32 arm64: ilp32: introduce binfmt_ilp32.c arm64: ilp32: share aarch32 syscall handlers arm64: signal: share lp64 signal structures and routines to ilp32 arm64: signal32: move ilp32 and aarch32 common code to separated file arm64: ilp32: introduce ilp32-specific sigframe and ucontext arm64: ptrace: handle ptrace_request differently for aarch32 and ilp32 Documentation/arm64/ilp32.txt | 45 +++ arch/Kconfig | 15 + arch/arc/Kconfig | 1 + arch/arc/include/uapi/asm/unistd.h | 1 + arch/arm/Kconfig | 1 + arch/arm64/Kconfig | 18 +- arch/arm64/Makefile | 3 + arch/arm64/include/asm/compat.h | 19 +- arch/arm64/include/asm/elf.h | 36 +- arch/arm64/include/asm/fpsimd.h | 2 +- arch/arm64/include/asm/ftrace.h | 2 +- arch/arm64/include/asm/hwcap.h | 8 +- arch/arm64/include/asm/is_compat.h | 78 ++++ arch/arm64/include/asm/processor.h | 15 +- arch/arm64/include/asm/ptrace.h | 12 +- arch/arm64/include/asm/seccomp.h | 2 +- arch/arm64/include/asm/signal32.h | 19 +- arch/arm64/include/asm/signal32_common.h | 13 + arch/arm64/include/asm/signal_common.h | 306 +++++++++++++++ arch/arm64/include/asm/signal_ilp32.h | 23 ++ arch/arm64/include/asm/syscall.h | 2 +- arch/arm64/include/asm/thread_info.h | 4 +- arch/arm64/include/asm/unistd.h | 6 +- arch/arm64/include/asm/vdso.h | 6 + arch/arm64/include/uapi/asm/bitsperlong.h | 9 +- arch/arm64/include/uapi/asm/unistd.h | 13 + arch/arm64/kernel/Makefile | 8 +- arch/arm64/kernel/armv8_deprecated.c | 6 +- arch/arm64/kernel/asm-offsets.c | 9 +- arch/arm64/kernel/binfmt_elf32.c | 35 ++ arch/arm64/kernel/binfmt_ilp32.c | 87 +++++ arch/arm64/kernel/cpufeature.c | 28 +- arch/arm64/kernel/cpuinfo.c | 18 +- arch/arm64/kernel/debug-monitors.c | 4 +- arch/arm64/kernel/entry.S | 37 +- arch/arm64/kernel/entry32.S | 80 ---- arch/arm64/kernel/entry32_common.S | 97 +++++ arch/arm64/kernel/entry_ilp32.S | 12 + arch/arm64/kernel/head.S | 2 +- arch/arm64/kernel/hw_breakpoint.c | 8 +- arch/arm64/kernel/perf_callchain.c | 28 +- arch/arm64/kernel/perf_regs.c | 4 +- arch/arm64/kernel/process.c | 11 +- arch/arm64/kernel/ptrace.c | 36 +- arch/arm64/kernel/signal.c | 352 +++--------------- arch/arm64/kernel/signal32.c | 111 +++--- arch/arm64/kernel/signal32_common.c | 37 ++ arch/arm64/kernel/signal_ilp32.c | 65 ++++ arch/arm64/kernel/sys_compat.c | 10 +- arch/arm64/kernel/sys_ilp32.c | 90 +++++ arch/arm64/kernel/traps.c | 11 +- arch/arm64/kernel/vdso-ilp32/.gitignore | 2 + arch/arm64/kernel/vdso-ilp32/Makefile | 82 ++++ arch/arm64/kernel/vdso-ilp32/vdso-ilp32.S | 22 ++ arch/arm64/kernel/vdso-ilp32/vdso-ilp32.lds.S | 84 +++++ arch/arm64/kernel/vdso.c | 65 +++- arch/arm64/kernel/vdso/gettimeofday.S | 20 +- arch/arm64/kernel/vdso/vdso.S | 6 +- arch/arm64/mm/mmap.c | 2 +- arch/blackfin/Kconfig | 1 + arch/c6x/include/uapi/asm/unistd.h | 1 + arch/cris/Kconfig | 1 + arch/frv/Kconfig | 1 + arch/h8300/Kconfig | 1 + arch/h8300/include/uapi/asm/unistd.h | 1 + arch/hexagon/Kconfig | 1 + arch/hexagon/include/uapi/asm/unistd.h | 1 + arch/m32r/Kconfig | 1 + arch/m68k/Kconfig | 1 + arch/metag/Kconfig | 1 + arch/metag/include/uapi/asm/unistd.h | 1 + arch/microblaze/Kconfig | 1 + arch/mips/Kconfig | 1 + arch/mn10300/Kconfig | 1 + arch/nios2/Kconfig | 1 + arch/nios2/include/uapi/asm/unistd.h | 1 + arch/openrisc/Kconfig | 1 + arch/openrisc/include/uapi/asm/unistd.h | 1 + arch/parisc/Kconfig | 1 + arch/powerpc/Kconfig | 1 + arch/score/Kconfig | 1 + arch/score/include/uapi/asm/unistd.h | 1 + arch/sh/Kconfig | 1 + arch/sparc/Kconfig | 1 + arch/tile/Kconfig | 1 + arch/tile/include/uapi/asm/unistd.h | 1 + arch/tile/kernel/compat.c | 3 + arch/unicore32/Kconfig | 1 + arch/unicore32/include/uapi/asm/unistd.h | 1 + arch/x86/Kconfig | 1 + arch/x86/um/Kconfig | 1 + arch/xtensa/Kconfig | 1 + drivers/clocksource/arm_arch_timer.c | 4 +- include/linux/fcntl.h | 2 +- include/linux/sched.h | 1 + include/linux/thread_bits.h | 76 ++++ include/linux/thread_info.h | 64 +--- include/uapi/asm-generic/unistd.h | 10 +- kernel/ptrace.c | 48 ++- scripts/checksyscalls.sh | 5 + 100 files changed, 1675 insertions(+), 698 deletions(-) create mode 100644 Documentation/arm64/ilp32.txt create mode 100644 arch/arm64/include/asm/is_compat.h create mode 100644 arch/arm64/include/asm/signal32_common.h create mode 100644 arch/arm64/include/asm/signal_common.h create mode 100644 arch/arm64/include/asm/signal_ilp32.h create mode 100644 arch/arm64/kernel/binfmt_elf32.c create mode 100644 arch/arm64/kernel/binfmt_ilp32.c create mode 100644 arch/arm64/kernel/entry32_common.S create mode 100644 arch/arm64/kernel/entry_ilp32.S create mode 100644 arch/arm64/kernel/signal32_common.c create mode 100644 arch/arm64/kernel/signal_ilp32.c create mode 100644 arch/arm64/kernel/sys_ilp32.c create mode 100644 arch/arm64/kernel/vdso-ilp32/.gitignore create mode 100644 arch/arm64/kernel/vdso-ilp32/Makefile create mode 100644 arch/arm64/kernel/vdso-ilp32/vdso-ilp32.S create mode 100644 arch/arm64/kernel/vdso-ilp32/vdso-ilp32.lds.S create mode 100644 include/linux/thread_bits.h -- 2.17.0