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 7FAA8C3DA4A for ; Fri, 16 Aug 2024 14:40:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id DA4168D0081; Fri, 16 Aug 2024 10:40:51 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D5CE28D007E; Fri, 16 Aug 2024 10:40:51 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id C1B818D0081; Fri, 16 Aug 2024 10:40:51 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id A41088D007E for ; Fri, 16 Aug 2024 10:40:51 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 56389161B2C for ; Fri, 16 Aug 2024 14:40:51 +0000 (UTC) X-FDA: 82458370302.12.8F812D6 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by imf21.hostedemail.com (Postfix) with ESMTP id E3AA71C002C for ; Fri, 16 Aug 2024 14:40:47 +0000 (UTC) Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=ayq31Px+; spf=pass (imf21.hostedemail.com: domain of broonie@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=broonie@kernel.org; dmarc=pass (policy=none) header.from=kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1723819210; a=rsa-sha256; cv=none; b=eNAKmF+eJq2tL8ejq61//PASWA5pme6JJ0uBDgj0f0GmyQG2wbUYUpfECxrT9HPoXdjjP7 /N+rnZHRNjpJex7e1ihbaaeLwxBVPgFmmeGCq0fjJvYFiqt09ueFBTciXJ1Gt29XIjZJfb K8avDZKF5erAHzzZNp0AlQ7bgk97Zk0= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=ayq31Px+; spf=pass (imf21.hostedemail.com: domain of broonie@kernel.org designates 139.178.84.217 as permitted sender) smtp.mailfrom=broonie@kernel.org; dmarc=pass (policy=none) header.from=kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1723819210; 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=tcN7KyW42hlru2wlDB/4TljC4CZo2PG0rwj1z4fzw0k=; b=jIv0/yMn3To1nhRtNEUWoz5ShDHhWA65fzYmG0woK5tcwO3PqjCar4V7DlnhR2fedb3MY+ T17//wSmeINVYlulSK+n1cnAXeNZQm8TE95/uU4wXBpPvvw94d7bc9ovUY8ClDawV6M2v3 396uSHJpy8EV4wFVgRAlqNm8SUAyibg= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by dfw.source.kernel.org (Postfix) with ESMTP id 02F586214B; Fri, 16 Aug 2024 14:40:47 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 19210C32782; Fri, 16 Aug 2024 14:40:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1723819246; bh=UzDJBf86ETc8UZTa5b4UELQHYAFgRcESJ7jTnyf0ZwM=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=ayq31Px++sqKgYH6KIIEfzP9t8l7YzSD7GuJ5qmVc4DKeok71ex+gt8p6GXQrin0A FMv1eKs/V3igtiQsqzoKNRGY+vydPlJjsnnKO+K1utHrSAE5nJ47/kWP2P3hXvjhOw 8vEjWx/dU/C0TnCX962O46QCERiC7GU9AJryrZV+7/2dJDsGItKkMAj7UaHl47sl4W v9sA63+/ybob+fDBXeRr2eiO0MIYZ5vbql1dY6Q5I+ccEVg2igJ9JkeO501cnqMHKH GjTuEJ//TuTnk5PuY4xNxD9ZEeux/z7OctdL2wDddo21XP0TYtjEzdJy6qH/qPzfQc cKnhkuzu5vfhA== Date: Fri, 16 Aug 2024 15:40:33 +0100 From: Mark Brown To: Marc Zyngier Cc: Catalin Marinas , Will Deacon , Jonathan Corbet , Andrew Morton , Oliver Upton , James Morse , Suzuki K Poulose , Arnd Bergmann , Oleg Nesterov , Eric Biederman , Shuah Khan , "Rick P. Edgecombe" , Deepak Gupta , Ard Biesheuvel , Szabolcs Nagy , Kees Cook , "H.J. Lu" , Paul Walmsley , Palmer Dabbelt , Albert Ou , Florian Weimer , Christian Brauner , Thiago Jung Bauermann , Ross Burton , 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, joey.gouly@arm.com Subject: Re: [PATCH v10 14/40] KVM: arm64: Manage GCS access and registers for guests Message-ID: <8c1e8fb6-0152-42f7-ab6d-93f6fe70b4aa@sirena.org.uk> References: <20240801-arm64-gcs-v10-0-699e2bd2190b@kernel.org> <20240801-arm64-gcs-v10-14-699e2bd2190b@kernel.org> <86h6bkzh8o.wl-maz@kernel.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="DUpDdNL7GPA6ROUr" Content-Disposition: inline In-Reply-To: <86h6bkzh8o.wl-maz@kernel.org> X-Cookie: A Smith & Wesson beats four aces. X-Stat-Signature: txhssdh7jwjjw54859x6izngdjwiy1yf X-Rspamd-Queue-Id: E3AA71C002C X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1723819247-347860 X-HE-Meta: U2FsdGVkX1+FAlXldHLjLpGIzTo1CHkJB8275gOuyAtZwzTM5FMUYmJufy2zwUGZZfzcpzZ99j/geCOspGAmrlhqOW4qRjOjuEguMbsCd/SVinPdSIGyqVXpehGJYUhFOJ/iBCacv0fkssHZHMULzCfXz4hReaAILf7QvbNiPCbqbhYopY0bFilhAIoy+ElnxH2VQDAV7oGIwpnCfk/6AhFROI/6DBdMRS7WaP87UfWDstwpMNmfOyUPBbZzR+PZUeTWJoSlr0F3Wz8mfshy2k2C8llbCykRpLH/s2DzADl6F2Y9ENdris7jgLWVAbUB6pbhxghgN/LKyPQJa4Jmt2KL5QNY6yg0+B64H3ukdK7nSfqQi9hlmTRsg3oRa/alS2R1rwTyVapUYjHYoW3Cmxmu7WHe9AsTfXQj8vUwonpAZoY+IExzCAsVqoE54cowWUD2TZGI8/VbzIcBIOO4J6CJyM7c2k+/OmpIA4YTWVgmFwTYMwa2+a/4NWTHQZdepdnFAWG5qLP1MOwvzTK33EFuhqtn6jFGsKVRnHq+oxODGocrXDNdETJs5yx81ql+eOHrNF0CrS4RPXiMNE1WOWUhYfmR9Jtru/1DLkBbOJsxwVOiE3oJBSrRnaHz+a+bZmijeMXjYNZn0pmeKBaYI5t/fQSUSdPdFKAlmRdP0PutsoEFcysVVEDOXCCAI6FRff6A1YnvLaMMv6wWia2wpuLHkbweoUSCE0dy0hElbeHeRpv8h0B8vd9yNZ1FFpCme0n/hob8JTMFxqIe4+m3+/SwrYRgvRjwTKTncaoUhBEjYK9Y/G5fTIs/EQluMtz8lzohN2CbNtFixJEKmtB4Fz7XtgmqkhN0cFyzqAhmGYX9+w2/flsbDNxIx+8t4opNn7VpKHE723JWj6mkz6Au0c9KFqyuuz5ldsn/oVVYoR6bkdmXhFmgcec37IN7e+OZJE8itRFllqYIsw8kmp9 joYuEMOw r0PbBMLxdP9vfZwIQORIOuDeHBrwPSw+X56xasG0Skq2SV8aC7I0GAg1vsqFPdz/w/rkVjuv7gy+byRkbfnMr5/drMy7sPXaAx+3dVUkWpRDIhnMON76fPXgv8WKp25i7RF0CljKF04vSUDkOYfuUvN0M1/fs+sJnrDFRlssgV8w9irY5N7GxdpGFETOHhRIQP7xK4j0wh8hbcXjT6w+i/09E5w5bD/ebyWoZu1z+DgxTqhpKULILiCMLAXcYv3yrdEsvFPH3IzYvSVr7DgAGAAPUXAq4JwLEDrJg6mfqfAj+LwNKm1xjT8hIq58rbc8S/S8/Iy0v9jIsqvhSvKSd2d/8aTaOJsBxcsVd12iyMhuv4FzJ7wFXvNaZf+BjQvOJCwCqxl1h4OU4NsTS3NXsPF/lIljh8UU3ryfxsl/WxWTIWFqsdAHC1tHZ8eRKizENMVCKG7sXDz6MdMJOwz6Iyx2TzQ== 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: List-Subscribe: List-Unsubscribe: --DUpDdNL7GPA6ROUr Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Fri, Aug 16, 2024 at 03:15:19PM +0100, Marc Zyngier wrote: > Mark Brown wrote: > > + { SYS_DESC(SYS_GCSCR_EL1), NULL, reset_val, GCSCR_EL1, 0 }, > > + { SYS_DESC(SYS_GCSPR_EL1), NULL, reset_unknown, GCSPR_EL1 }, > > + { SYS_DESC(SYS_GCSCRE0_EL1), NULL, reset_val, GCSCRE0_EL1, 0 }, > Global visibility for these registers? Why should we expose them to > userspace if the feature is neither present nor configured? ... > > + if (!kvm_has_feat(kvm, ID_AA64PFR1_EL1, GCS, IMP)) > > + kvm->arch.fgu[HFGxTR_GROUP] |= (HFGxTR_EL2_nGCS_EL0 | > > + HFGxTR_EL2_nGCS_EL1); > How can this work if you don't handle ID_AA64PFR_EL1 being written to? > You are exposing GCS to all guests without giving the VMM an > opportunity to turn it off. This breaks A->B->A migration, which is > not acceptable. This was done based on your positive review of the POE series which follows the same pattern: https://lore.kernel.org/linux-arm-kernel/20240503130147.1154804-8-joey.gouly@arm.com/ https://lore.kernel.org/linux-arm-kernel/864jagmxn7.wl-maz@kernel.org/ in which you didn't note any concerns about the handling for the sysregs. If your decisions have changed then you'll need to withdraw your review there, I'd figured that given the current incompleteness of the writability conversions and there being a bunch of existing registers exposed unconditionally you'd decided to defer until some more general cleanup of the situation. --DUpDdNL7GPA6ROUr Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAABCgAdFiEEreZoqmdXGLWf4p/qJNaLcl1Uh9AFAma/ZOAACgkQJNaLcl1U h9AqVAf+My4ZnSnvRQhvDgit0vtodchlwobno2H2GE7edIRFmlg3k4goJ7BXcmJp HS9AzX6BzfrFZrvDxZIfwrvfIp3wCTp95dOSfLGENuWQV7IByIKHIHZdU4DYr/Xt 3xJTwzDiJx19EK8R6usMaaQDarxQ9gozKbteWUt761o+iCKU6SGOvoN+2TkScTkA jmS+wMgm75FpHNpFm/wUixbuKoldXbagTgo9Wgly4xIW+11Rzpz/btXniVTM07BR XrnBaW2kdCXjr2C71bZGVBmg14aQCRh72D4xikY8k214GwuzeQbQber+iLP4io82 23ty1aim7XcdSmNPpDiJfoiXcJ1yYw== =CjJp -----END PGP SIGNATURE----- --DUpDdNL7GPA6ROUr--