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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id CA47EC87FCF for ; Mon, 4 Aug 2025 13:33:18 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Type:MIME-Version: References:In-Reply-To:Subject:Cc:To:From:Message-ID:Date:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=0bAWjHZ/+eTJm1jwjVg8zDX1kaYFqtNJEh4o/jh5S/U=; b=o0gXsHbOrTG0ziLAqD2+Z6Yf1V 0lD1bHNoJuHGxATa1JGnAurkMy+dHhnPlC2MMbUJnf89kS7wuMLkGHfIq2+hIXOV0BbS5tgZo096R a22fkYU5tkmt3W2N0Sdle2O+Vw5pFw9Md57gQxCEOEMdttnbR+rhRoSzm+TTRQ+Mtz0Jqv/hZQSmX D8dn9FmnizWLwUrS0CpDlX7X6RPIWduXWVpxU3tTdWwNtNaK8raQ24fzJhTTZZpQFC5tfBXb82Fo8 G6dnPEWoqdnuIBlX1mQWbc2+GOHNTzgFOZmkhD2P2+UjqF6uyj46QATgcImI3la6CE3ymcVEgVxzK zLKF0GYQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1uivJQ-0000000AXsx-2S3u; Mon, 04 Aug 2025 13:33:12 +0000 Received: from nyc.source.kernel.org ([2604:1380:45d1:ec00::3]) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1uiuyc-0000000AVDR-3RPJ for linux-arm-kernel@lists.infradead.org; Mon, 04 Aug 2025 13:11:44 +0000 Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by nyc.source.kernel.org (Postfix) with ESMTP id E79CAA55937; Mon, 4 Aug 2025 13:11:41 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 8A357C4CEE7; Mon, 4 Aug 2025 13:11:41 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1754313101; bh=TR4IynGlqh3xuGAPqNvGejeGuOim0a/t/2+l2ojuG3M=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=FWnA14Zr+PO8Dc7S1vSMyr5HSOBsd3ONJedoyeUL31soQ4u+qdF5zlJ1L+KssxKyX LGYOymZPSgU8XUqapDrdI4ABN9R2cYEl/PQn019vZhYuOfz7cXmJIKIQaMZrOKifAT QKWf3bPnPaG275SPQkSHQfbIr5kEkAMeHnsjdSS+Q7dd3fzzEpGS3zEJ19xdhuUjDk v+Qukmu9YNkJJ8hujmpT3ASfyqbFY3ilbA7GbhcFcgKJh/bbCkUx9ZiryFzE1FzBS7 X/hZIXq32mN7o9PtTTdeSuSKeoA/6QTgn4e2nvO12g1nU5CsZTv1QgKffDNJZYMjcu Kq9udbFUKHq/g== Received: from sofa.misterjones.org ([185.219.108.64] helo=goblin-girl.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95) (envelope-from ) id 1uiuyY-003oWR-Ss; Mon, 04 Aug 2025 14:11:39 +0100 Date: Mon, 04 Aug 2025 14:11:38 +0100 Message-ID: <86pldb6xkl.wl-maz@kernel.org> From: Marc Zyngier To: Yeoreum Yun Cc: catalin.marinas@arm.com, will@kernel.org, broonie@kernel.org, oliver.upton@linux.dev, anshuman.khandual@arm.com, robh@kernel.org, james.morse@arm.com, mark.rutland@arm.com, joey.gouly@arm.com, ry111@xry111.site, Dave.Martin@arm.com, ahmed.genidi@arm.com, kevin.brodsky@arm.com, scott@os.amperecomputing.com, mbenes@suse.cz, james.clark@linaro.org, frederic@kernel.org, rafael@kernel.org, pavel@kernel.org, ryan.roberts@arm.com, suzuki.poulose@arm.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, kvmarm@lists.linux.dev Subject: Re: [PATCH 10/11] KVM: arm64: nv: support SCTLR2_ELx on nv In-Reply-To: <20250804121724.3681531-11-yeoreum.yun@arm.com> References: <20250804121724.3681531-1-yeoreum.yun@arm.com> <20250804121724.3681531-11-yeoreum.yun@arm.com> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/30.1 (aarch64-unknown-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-SA-Exim-Connect-IP: 185.219.108.64 X-SA-Exim-Rcpt-To: yeoreum.yun@arm.com, catalin.marinas@arm.com, will@kernel.org, broonie@kernel.org, oliver.upton@linux.dev, anshuman.khandual@arm.com, robh@kernel.org, james.morse@arm.com, mark.rutland@arm.com, joey.gouly@arm.com, ry111@xry111.site, Dave.Martin@arm.com, ahmed.genidi@arm.com, kevin.brodsky@arm.com, scott@os.amperecomputing.com, mbenes@suse.cz, james.clark@linaro.org, frederic@kernel.org, rafael@kernel.org, pavel@kernel.org, ryan.roberts@arm.com, suzuki.poulose@arm.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-pm@vger.kernel.org, kvmarm@lists.linux.dev X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20250804_061142_994100_D5797548 X-CRM114-Status: GOOD ( 18.52 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Mon, 04 Aug 2025 13:17:23 +0100, Yeoreum Yun wrote: [...] > diff --git a/arch/arm64/kvm/nested.c b/arch/arm64/kvm/nested.c > index dc1d26559bfa..a4d3b2d2fd80 100644 > --- a/arch/arm64/kvm/nested.c > +++ b/arch/arm64/kvm/nested.c > @@ -1704,6 +1704,19 @@ int kvm_init_nv_sysregs(struct kvm_vcpu *vcpu) > TCR2_EL2_AMEC1 | TCR2_EL2_DisCH0 | TCR2_EL2_DisCH1); > set_sysreg_masks(kvm, TCR2_EL2, res0, res1); > > + /* > + * SCTLR2_EL2 - until explicit support for each feature, set all as RES0. > + */ > + res0 = SCTLR2_EL2_RES0 | SCTLR2_EL2_EMEC; > + res0 |= SCTLR2_EL2_EASE; > + res0 |= SCTLR2_EL2_NMEA; > + res0 |= (SCTLR2_EL2_EnADERR | SCTLR2_EL2_EnANERR); > + res0 |= SCTLR2_EL2_EnIDCP128; > + res0 |= (SCTLR2_EL2_CPTA | SCTLR2_EL2_CPTA0 | > + SCTLR2_EL2_CPTM | SCTLR2_EL2_CPTM0); > + res1 = SCTLR2_EL2_RES1; > + set_sysreg_masks(kvm, SCTLR2_EL2, res0, res1); This patch is obsolete, but I'd like to point out that this is not the way we describe these things. Each bit of the register needs to be tracked against the feature it is part of, and not blindly added to the RES0 set. See https://lore.kernel.org/all/20250708172532.1699409-15-oliver.upton@linux.dev/ for the equivalent change. You should *NEVER* describe a functional bit as RESx without considering whether the feature is exposed to the guest, irrespective of what the kernel supports. Thanks, M. -- Without deviation from the norm, progress is not possible.