From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752549AbcD2Q1J (ORCPT ); Fri, 29 Apr 2016 12:27:09 -0400 Received: from mail-by2on0091.outbound.protection.outlook.com ([207.46.100.91]:34016 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751060AbcD2Q0x (ORCPT ); Fri, 29 Apr 2016 12:26:53 -0400 Authentication-Results: arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=none action=none header.from=caviumnetworks.com; Date: Fri, 29 Apr 2016 19:26:12 +0300 From: Yury Norov To: Catalin Marinas CC: , , , , , , , , , , , , Andrew Pinski , , , Andrew Pinski , , , Philipp Tomsich , , Subject: Re: [PATCH 25/25] arm64:ilp32: add ARM64_ILP32 to Kconfig Message-ID: <20160429162612.GB16451@yury-N73SV> References: <1459894127-17698-1-git-send-email-ynorov@caviumnetworks.com> <1459894127-17698-26-git-send-email-ynorov@caviumnetworks.com> <20160429160334.GD30316@e104818-lin.cambridge.arm.com> <20160429160855.GA16451@yury-N73SV> <20160429161445.GE30316@e104818-lin.cambridge.arm.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <20160429161445.GE30316@e104818-lin.cambridge.arm.com> User-Agent: Mutt/1.5.23 (2014-03-12) X-Originating-IP: [95.143.213.121] X-ClientProxiedBy: AM2PR03CA0015.eurprd03.prod.outlook.com (10.160.207.25) To BN4PR07MB2226.namprd07.prod.outlook.com (10.164.63.144) X-MS-Office365-Filtering-Correlation-Id: 429fd5f9-35c3-482d-02f1-08d3704b115d X-Microsoft-Exchange-Diagnostics: 1;BN4PR07MB2226;2:62xpFdX5Vk1n9B+BREk7C80dSSh9HAfo4I8uGTdw2t+W/23xOvI8NW6ucVDNDT9uEAc6+60GrplDtR8LwLF8FxXqvkfbFkXK1qoy16Sw8rJ9jUKmaAGFdvc+eGm0c44gbM2UhceqMbzWC9TzlqlbArJobStqNk+2jQDO92EHLuZ+U4G8Tls2kuP6C9CGPbQN;3:o1sYq11VYUEOK11XuBePTAm7XVmI6L14Y93uOtg4lZl9WJ5VVUkj/8Z5RyM62CepLWvFRlfn+qmLlW9HnOXU7u27ZRlM1oRE9CdS5DaTjGct6P1uM3rXkFfxK3wSnfw4;25:URBF0kbCoOZ6vXD58bla2BzQQU03FwC6KJwg/2kp94d46beAPdcnhjGrW4jEKCj1xwRRu4fDAnFJiKyJsmTdSDowAbO/YQPC4kEDNgWwR6sT9huPV1yksL6MuXPm7EnJj43DQYd7Ma5y5nlNcRP1ZBwx3/D1P36cR2nbWMej7RQbtqFk91IAAFAgQ33NQIacKi04it4dIlVwpgnvHDnnVj9vt5OhbjaajCULr87tYV4mUZ0NB6AuVbqIYc3xTOokVM8OOzQebrje8nKodh2zTbd+IQAdb7HyhHpCbC4xrraXY89n5Fei08S0gOM+LqaG/2rOu4DDs8fvsPc6hT8Ynw== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN4PR07MB2226; X-Microsoft-Exchange-Diagnostics: 1;BN4PR07MB2226;20:dtsPAy8mtjMEtJMjahIE3Fimrrkr+pj9YmbaYcVbDBEXyE419pBH+AbI7gostAQBPQSZi7R+zBR/bbwcGx8KLPWgc/6ku9OvcfyqsXDED7p/vvnRFcUWi1D/Z+RLSS/S4+tsxYXl1KcMDBGFvZ0cCeYjMTV7pDj2z9PqWRQ4WUWTQ/PuiK18HzEaRY411mLuhE09nyE0qUmQ9EKAiNoLRaKXO73bT9x4F30BCcWGnLQOI46D0neCs+6d1kQKs0TJu4rNwK1Kv+A3w47V8hhFrzjwsdXVJ0aOUfGix6CE93HFGVYHQimumsWKJ3Q/HpBE8J+uiyRyyhbKFIXUgsW/hkjhrmaC6TVLknOACLZv4PM6tYZhY5rNvegRCM9PV65Gfyei0XNYzHmXyeXttgQtQnhq+aCV/QIxelE7eY/DDQiJOuYizUZZVro7gnzZ98IXLLO5R+mEzzFqQM2G5raoUCL20fH+4pq6kiy6zojs7wK5Hv4pDloLBNZ6WyEFX+h7f5/8rNXSdEi4u4Byh+G6sydChNyEYujqiCkmTAL/PpkS47NRshG3vfzQOZg3eW3d4/u3Zz21/AUlXkIkBjYWB5KJMyBooKmHdWj/R4hkuWQ= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(9101521072)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046);SRVR:BN4PR07MB2226;BCL:0;PCL:0;RULEID:;SRVR:BN4PR07MB2226; X-Microsoft-Exchange-Diagnostics: 1;BN4PR07MB2226;4:L3wEwV0N8KMe+byqySh0tOj+zinZfFbXI6twSfNYkmelkUq1rkUWYLrP2KtV8/fh62hAXbGj2WgImICPqn59ujJr4ZJY+PAFITI6HI3BM2MrdSLP6S1F8714WXXxkCVvXP+0s7UCDQg7TUgaNsdOvjqeJNriyU0ZcNpccYYChwadOBJxLFd0nLmc/6GivILbgemS9UVtu9tpKG4DCnI13pFanHv3N9rj/XHoqIBkjQ41q+/I4htpIzCaia0RcbkDq65WA0FI3SWDWp9NrqWal/5zO7cDLjsRtC5giZ9uTamohA3dU/2yvN9CaJywHmF52bO1zFBGxrR3cES61fdOK21JPL5EGKbvyk0Xi8n/Bn11xiBuA4W4qE3wbd/ixfNSLwZlIO5OlMwSdMvvt7sxdQ== X-Forefront-PRVS: 0927AA37C7 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(6069001)(24454002)(5008740100001)(2950100001)(46406003)(4326007)(66066001)(2906002)(110136002)(47776003)(33716001)(50466002)(92566002)(77096005)(97756001)(4001350100001)(1076002)(23726003)(9686002)(76506005)(1096002)(81166005)(586003)(6116002)(3846002)(33656002)(93886004)(54356999)(76176999)(189998001)(50986999)(83506001)(5004730100002)(42186005);DIR:OUT;SFP:1101;SCL:1;SRVR:BN4PR07MB2226;H:localhost;FPR:;SPF:None;MLV:sfv;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BN4PR07MB2226;23:EsOg2583YBNWbcyfRmh6WyqkbSDgFGODNv3wpm+Nb?= =?us-ascii?Q?p2YfRwYqy0S+FQd6RiZpJ7fG8NrP/gC0p4EK0kPPvMEHc506ZC/qZqR3418R?= =?us-ascii?Q?sXyukMe+UhkO8z+/jBrl4Ug72CMwEFLtmMdotmux3wQFyMQrKBSl9UK6/6Kw?= =?us-ascii?Q?5wKfZtvlrWsWAqUn1ZH/K0cPqJzDJA700b9zokHgjWdahh/vzi/E/l8lgirD?= =?us-ascii?Q?jIeohVp25gn3h01VHA9t+GaBheFXIEH7rG+7uXMv7/m9zTLlVxJYMYHCZQlk?= =?us-ascii?Q?BMMNB1nq43JZZ9qgbwtGvOYZ7m9YNHrl4HkK4QmSq9hAw0EFVKxX6yKhVrqa?= =?us-ascii?Q?qrX2klXgmnorixrUvnSUqJKWAP6Tu4ErsSFKSNutlaJN4TWW0JSF1kKnotpl?= =?us-ascii?Q?3x43g0xa+afMG/dPx1zrFrnv5yVuhrTBqbuqnG0TPERuEe+l7/fQkC2dFroy?= =?us-ascii?Q?mc02UznouRT0IOgIsMx7Z8P+9J9bbaHjHpZcPONMD5BAiNpHYNYQOK5tWBjk?= =?us-ascii?Q?83xZPYol7dvcVVXPiuc89rtISSYYKwHzJAbMfr7LA3Pcdh0DE0Scp+ORPLvd?= =?us-ascii?Q?Uj4eUXr4D6ZBfhfcAG5U74I23yQJTyAn4egtUMOUqhfyBzyBoAubG+LtzzQN?= =?us-ascii?Q?Y5LTg6QStJ41FmQKhetjBZYg1gNv+nQv4FkwykKLqOr3FRyuuvGhsiu59Nnp?= =?us-ascii?Q?1tbbVdFpOE4FYJykePbFyN1Qq6vFDwJO7rF6PSYGdKytnYScMaDIL9gxKLZe?= =?us-ascii?Q?+DQoo2+pkNjwdupWl0Or1ccb2Ik/YMG1JOKz1n3n7jP3UbmFPAUBEEGPO/7z?= =?us-ascii?Q?SJJLYSD3nQ8fes+jMH06MLY2QlCvnbtNXUIPeph4LA3YPvp0CvIcmlY1iJQE?= =?us-ascii?Q?c/bHup//cVrvTwZJnYgsUd6kqjR+zrYveCP6oMeijxJcz2AbDmvaqSRasJbO?= =?us-ascii?Q?QuqOR3gZaijjaQnJuKojF1I84Cyzn5+pO/O5538aQ=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;BN4PR07MB2226;5:yJhBhHoxJnefNE/3/tIWUH7aynNRT8TvUOQvbw4OZaXlOsxJibIlMj2Z3EqAWBimDAxpL3zhoavjI7C7B6pztjrbCEY99Oy6Mz0Kz9vcuYtuVZoryz4IpwaRQE8LN1xkLXUv32N44M8d6Z4WRGD28g==;24:D+qq87We7woUPl74NUqFVskJyBcPc1bB8aCt8xBIVgTyqC8JBa349HbVD10VRfGf2LYZKRLP7fj+cZVX6DY15qh38CZQHRth7QsVjfCiQMM=;7:DbuSNwoAUC/ehTXSIjhxAnagzq5VmUTpyRUb4mTo7xGAPzyTdmtFaCfRbDXGTjX9ba0gzvglnt6O2I8mA98OSfiTZpW0x3xf5N/7oVWTyxipyBzwqT7Cj+fQRR1AUD40JcAsWhhkOM28I3a7piC0ZJ1WIcPXga3sjizYRlpjwojq54NMIY2y1Q9XBsSagZwa SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 29 Apr 2016 16:26:50.2413 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN4PR07MB2226 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Apr 29, 2016 at 05:14:46PM +0100, Catalin Marinas wrote: > On Fri, Apr 29, 2016 at 07:08:55PM +0300, Yury Norov wrote: > > On Fri, Apr 29, 2016 at 05:03:34PM +0100, Catalin Marinas wrote: > > > On Wed, Apr 06, 2016 at 01:08:47AM +0300, Yury Norov wrote: > > > > +config ARM64_ILP32 > > > > + bool "Kernel support for ILP32" > > > > + select COMPAT_WRAPPER > > > > + help > > > > + This option enables support for AArch64 ILP32 user space. ILP32 > > > > + is an ABI where long and pointers are 32bits but it uses the AARCH64 > > > > + instruction set. > > > > > > Is there any penalty for AArch32 tasks when selecting COMPAT_WRAPPER? > > > > No. AARCH32 doesn't define __SC_WRAP and so __SYSCALL macro is used, > > which fills syscall table with sys_xxx versions, not compat_sys_xxx. > > Ah, I forgot it has its own unistd32.h. > > Thanks. Even if it was sharing generic unistd,h, it's OK as well. To use wrappers, you have to enable COMPAT_WRAPPER (which is enabled even if only a single ABI needs it) *and* define __SC_WRAP in corresponding sys_xxx.c, which is individual for each abi, of course. > > -- > Catalin From mboxrd@z Thu Jan 1 00:00:00 1970 From: Yury Norov Subject: Re: [PATCH 25/25] arm64:ilp32: add ARM64_ILP32 to Kconfig Date: Fri, 29 Apr 2016 19:26:12 +0300 Message-ID: <20160429162612.GB16451@yury-N73SV> References: <1459894127-17698-1-git-send-email-ynorov@caviumnetworks.com> <1459894127-17698-26-git-send-email-ynorov@caviumnetworks.com> <20160429160334.GD30316@e104818-lin.cambridge.arm.com> <20160429160855.GA16451@yury-N73SV> <20160429161445.GE30316@e104818-lin.cambridge.arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Return-path: Content-Disposition: inline In-Reply-To: <20160429161445.GE30316@e104818-lin.cambridge.arm.com> Sender: linux-doc-owner@vger.kernel.org List-Archive: List-Post: To: Catalin Marinas Cc: linux-arch@vger.kernel.org, linux-s390@vger.kernel.org, arnd@arndb.de, pinskia@gmail.com, Prasun.Kapoor@caviumnetworks.com, schwab@suse.de, joseph@codesourcery.com, linux-doc@vger.kernel.org, heiko.carstens@de.ibm.com, linux-kernel@vger.kernel.org, agraf@suse.de, klimov.linux@gmail.com, Andrew Pinski , broonie@kernel.org, bamvor.zhangjian@huawei.com, Andrew Pinski , schwidefsky@de.ibm.com, Nathan_Lynch@mentor.com, Philipp Tomsich , linux-arm-kernel@lists.infradead.org, christoph.muellner@theobroma-systems.com List-ID: On Fri, Apr 29, 2016 at 05:14:46PM +0100, Catalin Marinas wrote: > On Fri, Apr 29, 2016 at 07:08:55PM +0300, Yury Norov wrote: > > On Fri, Apr 29, 2016 at 05:03:34PM +0100, Catalin Marinas wrote: > > > On Wed, Apr 06, 2016 at 01:08:47AM +0300, Yury Norov wrote: > > > > +config ARM64_ILP32 > > > > + bool "Kernel support for ILP32" > > > > + select COMPAT_WRAPPER > > > > + help > > > > + This option enables support for AArch64 ILP32 user space. ILP32 > > > > + is an ABI where long and pointers are 32bits but it uses the AARCH64 > > > > + instruction set. > > > > > > Is there any penalty for AArch32 tasks when selecting COMPAT_WRAPPER? > > > > No. AARCH32 doesn't define __SC_WRAP and so __SYSCALL macro is used, > > which fills syscall table with sys_xxx versions, not compat_sys_xxx. > > Ah, I forgot it has its own unistd32.h. > > Thanks. Even if it was sharing generic unistd,h, it's OK as well. To use wrappers, you have to enable COMPAT_WRAPPER (which is enabled even if only a single ABI needs it) *and* define __SC_WRAP in corresponding sys_xxx.c, which is individual for each abi, of course. > > -- > Catalin From mboxrd@z Thu Jan 1 00:00:00 1970 From: ynorov@caviumnetworks.com (Yury Norov) Date: Fri, 29 Apr 2016 19:26:12 +0300 Subject: [PATCH 25/25] arm64:ilp32: add ARM64_ILP32 to Kconfig In-Reply-To: <20160429161445.GE30316@e104818-lin.cambridge.arm.com> References: <1459894127-17698-1-git-send-email-ynorov@caviumnetworks.com> <1459894127-17698-26-git-send-email-ynorov@caviumnetworks.com> <20160429160334.GD30316@e104818-lin.cambridge.arm.com> <20160429160855.GA16451@yury-N73SV> <20160429161445.GE30316@e104818-lin.cambridge.arm.com> Message-ID: <20160429162612.GB16451@yury-N73SV> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Fri, Apr 29, 2016 at 05:14:46PM +0100, Catalin Marinas wrote: > On Fri, Apr 29, 2016 at 07:08:55PM +0300, Yury Norov wrote: > > On Fri, Apr 29, 2016 at 05:03:34PM +0100, Catalin Marinas wrote: > > > On Wed, Apr 06, 2016 at 01:08:47AM +0300, Yury Norov wrote: > > > > +config ARM64_ILP32 > > > > + bool "Kernel support for ILP32" > > > > + select COMPAT_WRAPPER > > > > + help > > > > + This option enables support for AArch64 ILP32 user space. ILP32 > > > > + is an ABI where long and pointers are 32bits but it uses the AARCH64 > > > > + instruction set. > > > > > > Is there any penalty for AArch32 tasks when selecting COMPAT_WRAPPER? > > > > No. AARCH32 doesn't define __SC_WRAP and so __SYSCALL macro is used, > > which fills syscall table with sys_xxx versions, not compat_sys_xxx. > > Ah, I forgot it has its own unistd32.h. > > Thanks. Even if it was sharing generic unistd,h, it's OK as well. To use wrappers, you have to enable COMPAT_WRAPPER (which is enabled even if only a single ABI needs it) *and* define __SC_WRAP in corresponding sys_xxx.c, which is individual for each abi, of course. > > -- > Catalin