From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id D5F6DC001DB for ; Mon, 7 Aug 2023 13:01:11 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 409616B0072; Mon, 7 Aug 2023 09:01:11 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3E0E08D0003; Mon, 7 Aug 2023 09:01:11 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2D0BA8D0002; Mon, 7 Aug 2023 09:01:11 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 1B1866B0072 for ; Mon, 7 Aug 2023 09:01:11 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 3C793B21E1 for ; Mon, 7 Aug 2023 13:01:10 +0000 (UTC) X-FDA: 81097319100.16.8A0A33F Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf23.hostedemail.com (Postfix) with ESMTP id 075C7140065 for ; Mon, 7 Aug 2023 13:00:53 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=rvvDU8sr; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf23.hostedemail.com: domain of broonie@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=broonie@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1691413254; a=rsa-sha256; cv=none; b=790j9EcCLAz3NPhFd5P8jm3XhqaCHtW9oUUKOKWVM0CGxtfgFuu1u2AcEfqzCmLKVFSo5i P2diLvlGd8SAL540VsgVc51uDBnmABCBvlo1/t805jVkN6idLud5f+mYAjgfaT/tphpQN0 W+q+lUiREuTEOrQSUzdfxXXEsBGc+/M= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=rvvDU8sr; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf23.hostedemail.com: domain of broonie@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=broonie@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1691413254; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=+YWamu0OGUJu9SW4rDoYsHDRk9aJJ07BNV8H6Irh/64=; b=dSro2zFT7V5uWUPvVOKIGLqDBGjFdCcoSRvVGPjV5W07vgybJamwHAquhwSPyiRKMeuZLr IAX9wTXLulZLHuZ0nbhNVEposgpsn1+4yWUYlY3LkmeUoBokhPEjK5JMyV52+U19zI2r0n JIKZA5Ljvlb/hIp16yduvsfHnKquid4= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 966D7619F4; Mon, 7 Aug 2023 13:00:52 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 31608C433C7; Mon, 7 Aug 2023 13:00:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1691413252; bh=VIywjKfIQjCBtdbDPXYlia2uvZPXVd/riPHCXoskQic=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=rvvDU8srIyUZqSC/AZn5tENk73e6b7lcMD0bggv0OZy+kdMv1wzrdao14Ek53Iiyx IRdeP2i7dHvG05GYveqesPRozZBWvPkPzVgLAPzRKehV8FG4dTBFTlwNmq6W9aAmXd TOJ2NMgyqruEmA77u2ERYj64yfya3426m3ZWoUGeog++a6pvx66c8pChwY38vz523S ChaYFX40JW+pa2BW1vXmOmq45J6hBtdc88n5UAJdNuTfAiy2eP80JJIFmiP356Yg99 NUF9YdSDWmi87A0gAAG2I/js0A4x5VYEjSB7V464D9htKF6RuocFXxnBcwe4+5gtev Hkzg/2TxLfPZA== Date: Mon, 7 Aug 2023 14:00:42 +0100 From: Mark Brown To: Szabolcs Nagy Cc: Catalin Marinas , Will Deacon , Jonathan Corbet , Andrew Morton , Marc Zyngier , Oliver Upton , James Morse , Suzuki K Poulose , Arnd Bergmann , Oleg Nesterov , Eric Biederman , Kees Cook , Shuah Khan , "Rick P. Edgecombe" , Deepak Gupta , Ard Biesheuvel , "H.J. Lu" , Paul Walmsley , Palmer Dabbelt , Albert Ou , linux-arm-kernel@lists.infradead.org, linux-doc@vger.kernel.org, kvmarm@lists.linux.dev, linux-fsdevel@vger.kernel.org, linux-arch@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org Subject: Re: [PATCH v3 21/36] arm64/mm: Implement map_shadow_stack() Message-ID: <3a077ff3-8627-4337-9b4a-6a8828eda0e7@sirena.org.uk> References: <20230731-arm64-gcs-v3-0-cddf9f980d98@kernel.org> <20230731-arm64-gcs-v3-21-cddf9f980d98@kernel.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="zuyh0JKERt9z219h" Content-Disposition: inline In-Reply-To: X-Cookie: idleness, n.: X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 075C7140065 X-Stat-Signature: tey5tkwbpq1itku5cu5xhuohfh33iahx X-HE-Tag: 1691413253-758642 X-HE-Meta: U2FsdGVkX1+6TPkGmoE6jHIU+NVvYuGYSQ2hdVIEAlEt8d/jfp315VnKmRqNsURl+WCxRpWkeDKJQueU/OheaHuI6QBC7etiieh5t+DpOMi21czAAsmYgqL4VgCH+BPufMokePcCZTMKLuc7JGPQKqqhhS7BisJnrm8U7HG41NIffOR6dRfHHjT+1aDhGtFU0jkJc6AydxnDv2eyi2DgUOgfQtXszSz7QgBPBBqLMCHdDcQJy4vn70esc8r3n4M+oJZNxevaAn+0HdiCPHfaVGOI5Hpiyb1H0ZEaQ05t68kB5bjp/e3xKgXxWi9dIA7HzapQXtcrgdRneITbIYZN22EwJWjdj+CA0vweGnEr82V0ILp3vuQlx6GjXaaO5RLvp5h6g4RLfzBvZA39xAkhvkia7LamaG9UEWVU3HsPkc9D8B7tJw/DK4V+nbZiaEsI+/4GC+8PwQmi7dXQw0DQhJzVBZa1DEzJaHtyHbPFYmEnVzfYAabaF1aySZcxxlzUo7eE6j99rDQEY6b66BFqOjwHMb38DNGOwoMTcRRJVzfuz0O3XZ+jJ2OTe2qq0qACfMge6vYaLjtNuNHi4eH4+qiGwel1/igU3GR+oqGl6qhxaTp+vNCjEDY1Bd5o06MBlXrXXQI+OCoxVHMqFLZIQ6OwxV2q+boocA2zS8bOzPpX78WfvNejzN1FuEsSo3dwx1F46iGN4DMxH/jFuj3ZuUzhkJxuh1+dy7UjHJj+3se0ZQ7i1zP+UG+dopJpuZHDTWpr4szD+Fe+GosGfrncIiwkotRMERYA8LrLzIwFEOMCZ+reE2SQGcFcoHZPuJPgNvFweENYio4pCtJmriNPe37mIMRPQ5UlVcvTC/qPQx28YEBxfIokvaeGs4t9YeHThdY2O8erVgmzIrwAOc8AgEaYGW4wVaU+ZhO3n1M2fhut059yQV3gf6LfJxUBuptlmtTDyguTOX4aOlQ8WE5 SC4+lxfF ghTVjN/My4CkB9jP2EeiIAGRJ/MOcBsCnoydO1Dvia08aTvSfNbXffj7cects5dh9xTQY0EmL9PhipFnDSkrJZHYiIK/9NTYzTeGN1+tEmXZLoX2+i4jhQMXvATs5CEfgjOngQLserFIkpFxs5yBf1n3sAMbZsE+O4j+63DKsI64mtqGfuEBkMCQTNuQb+FK8V37IJlor9lOjEbTgq11e6G62+PnOR6dCPklv0ejMDWykrlWw6+HLdlh2drDfunIxz8dwwjBjXKCqoHcD4a1RXWXwTsVtUU/UW8Rwkb8NAi3AkcUVDTOApYtZ72zndCkbPnmxTqSy51E96FQcRxQykpYDGYp7H9N5aAtv7IgZpBudVp727aOvUCMNdC8iZLxPzuqD7FvvpM+F+RC/j15pPfrt7JP+3+ZttiiACpcv+NZ/p/ElfkZljLw2uutt0e9l9dj66c77rj8VHPladBsiH7lbGg== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: --zuyh0JKERt9z219h Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Mon, Aug 07, 2023 at 11:20:58AM +0100, Szabolcs Nagy wrote: > The 07/31/2023 14:43, Mark Brown wrote: > > +SYSCALL_DEFINE3(map_shadow_stack, unsigned long, addr, unsigned long, size, unsigned int, flags) > > +{ > > + unsigned long alloc_size; > > + unsigned long __user *cap_ptr; > > + unsigned long cap_val; > > + int ret; > > + > > + if (!system_supports_gcs()) > > + return -EOPNOTSUPP; > > + > > + if (flags) > > + return -EINVAL; > > + > > + if (addr % 16) > > + return -EINVAL; > mmap addr must be page aligned (and there is no align req on size). > i'd expect similar api here. That's not what the manual page or a quick check of the code suggest that mmap() does, they say that the kernel just takes it as a hint and chooses a nearby page boundary, though I didn't test. I'm not sure why I have that alignment check at all TBH, and to the extent it's needed I could just be 8 - this level of code doesn't really care. > > + if (size == 16 || size % 16) > > + return -EINVAL; > why %16 and not %8 ? I don't think that's needed any more - there was some stuff in an earlier version of the code but no longer. --zuyh0JKERt9z219h Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAABCgAdFiEEreZoqmdXGLWf4p/qJNaLcl1Uh9AFAmTQ6voACgkQJNaLcl1U h9ADtwf9Hi+3Tmw6lo4OcpVr7n1Zx4xMLurjUWXhlQulr3E2yaNH/LoJepX0V/Hy cYyeMDXfa9itHkAmxF+PWpfByFW2ak1NvN+VB1ywgbz4kJFiAK11hsjQzWuiJw+s e1it4mLwr1FXHqL0ewxN4pWvkFHmoyVTtKmtIlYrR4K9Xq8KEWrEDi6x5LHrI6tk HXZ6HBESzDzzrctdnfG91f3YdpxLKuvuE1l+HEVfKlh5EqEHtTxzLT1BCDHy4ebI URGjT1qEAOxoNDbYkJaaPcVnDkFfcXuSC07xv57tktihM+MnQCtZd0b+IH9lf6Ry E10gfnUnsEkptjykMZVkmRiHM0iWvQ== =jbyG -----END PGP SIGNATURE----- --zuyh0JKERt9z219h--