From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id AA0A3606A32A for ; Mon, 9 Nov 2026 08:33:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.a=rsa-sha256 header.s=bombadil.20210309 header.b=k+yGNrgP; dkim=pass (1024-bit key, unprotected) header.d=linux.dev header.i=@linux.dev header.a=rsa-sha256 header.s=key1 header.b=lCVV2COP 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-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:Cc:To:From: Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Unsubscribe-Post: List-Owner; bh=tscIvS/2uNNzd7geDNK8rFMHpCV6KI9seOh0hyrqpj4=; b=k+yGNrgP++Tz7S SDl+KeobSPZFNPSUEcf8upCF16VuGWG5kwPTZcWP9wcozE9tv1N1XV2iAi33QkfzA50XlzCoA19Nz QEWPacGsDnU/3sFsKNRDRrKi8LmqP+Rug/9EQd+p9jzVnhwTgfBiJHp17Y4BGLv25s9VAGkqjPG1H kSO8+FNatFdsRjtcZw5rpf8PSc+Xmbss8WVx04KxIkVGmeWTdTVuJ94LnEJpn0omgdvWxRdwyKSjz HJo/Unyamt7066rHBykr3pmhDQ2V6YHwY8gWDreSw3AK4w2Lkj9obhbBrCFVJmCpsL9x3jr2C4nLc eK6risKMdPOj2D3LPS6Q==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.100.1 #2 (Red Hat Linux)) id 1xQKoU-000000004w5-1x7V; Mon, 09 Nov 2026 08:33:14 +0000 Received: from out-69.mta0.migadu.com ([2001:41d0:1004:224b::45] helo=mta0.migadu.com) by bombadil.infradead.org with esmtps (Exim 4.100.1 #2 (Red Hat Linux)) id 1xQKoL-000000004ib-3fDw for linux-arm-kernel@lists.infradead.org; Mon, 09 Nov 2026 08:33:12 +0000 X-Envelope-To: linux-arm-kernel@lists.infradead.org DKIM-Signature: a=rsa-sha256; bh=eF62gDKoO96Jep9ah+yCAh5pGqTeJMWdIW2pxz+Y0j0=; c=simple/simple; d=linux.dev; h=from:to:subject:date:message-id:mime-version:content-type; s=key1; t=1794213184; v=1; x=1794817984; b=lCVV2COPcREcfPIqIy+ml7BL5xVtiP5cYTiQnEyk294NekzyHaPPiytxLaSElUyfIQQ3hD2q QnfhdOZ5/Tik3ujuYGUcu9Vefi2Ra2MSWI2ltgguozLFXhce/Oz80UI3KQWXUM9E0gYMTi8Q20l rFYnaqsGVHpV5Vz6gUjdc9zY= X-Envelope-To: linux-arm-kernel@lists.infradead.org Received: by smtp.migadu.com with ESMTPS id 41f2f89c3729ba68; Mon, 09 Nov 2026 08:33:03 +0000 X-Mizu-Trace-ID: 41f2f89c3729ba68 X-Migadu-Flow: FLOW_OUT From: Fuad Tabba To: Marc Zyngier , Oliver Upton , kvmarm@lists.linux.dev, linux-arm-kernel@lists.infradead.org Cc: Joey Gouly , Suzuki K Poulose , Zenghui Yu , Steffen Eiden , Catalin Marinas , Will Deacon , Mark Rutland , Vincent Donnefort , Fuad Tabba , kvm@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 16/16] KVM: arm64: Advertise ECV, HAFT and ETS3 to protected VMs Date: Mon, 9 Nov 2026 08:32:05 +0000 Message-ID: <20261109083205.806619-17-fuad.tabba@linux.dev> X-Mailer: git-send-email 2.47.3 In-Reply-To: <20261109083205.806619-1-fuad.tabba@linux.dev> References: <20261109083205.806619-1-fuad.tabba@linux.dev> X-Archived-By: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.9.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20261109_003306_062729_2F5F84D5 X-CRM114-Status: GOOD ( 10.22 ) X-Spam-Score: -2.1 (--) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" X-Spam-Status: No, score=-18.9 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_GIT autolearn=ham autolearn_force=no version=4.0.1 X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on aws-us-west-2-korg-listserv-alma10-1 Advertise FEAT_ECV, FEAT_HAFT and FEAT_ETS3 to protected VMs, with ECV capped at IMP and HAFDBS at HAFT, since CNTPOFF and HDBSS only add EL2 and EL3 controls. ECV's self-synchronised counter views trap under the same controls as CNTPCT_EL0 and CNTVCT_EL0, which kvm_handle_cntxct() emulates. Signed-off-by: Fuad Tabba --- arch/arm64/kvm/hyp/nvhe/sys_regs.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/arch/arm64/kvm/hyp/nvhe/sys_regs.c b/arch/arm64/kvm/hyp/nvhe/sys_regs.c index a0f6737ff8f16..4ab0ee50eea20 100644 --- a/arch/arm64/kvm/hyp/nvhe/sys_regs.c +++ b/arch/arm64/kvm/hyp/nvhe/sys_regs.c @@ -173,16 +173,17 @@ static const struct pvm_ftr_bits pvmid_aa64mmfr0[] = { MAX_FEAT(ID_AA64MMFR0_EL1, TGRAN4, IMP), MAX_FEAT(ID_AA64MMFR0_EL1, TGRAN16, IMP), MAX_FEAT(ID_AA64MMFR0_EL1, TGRAN64, IMP), + MAX_FEAT(ID_AA64MMFR0_EL1, ECV, IMP), FEAT_END }; static const struct pvm_ftr_bits pvmid_aa64mmfr1[] = { - MAX_FEAT(ID_AA64MMFR1_EL1, HAFDBS, DBM), + MAX_FEAT(ID_AA64MMFR1_EL1, HAFDBS, HAFT), MAX_FEAT_ENUM(ID_AA64MMFR1_EL1, VMIDBits, 16), MAX_FEAT(ID_AA64MMFR1_EL1, HPDS, HPDS2), MAX_FEAT(ID_AA64MMFR1_EL1, PAN, PAN3), MAX_FEAT(ID_AA64MMFR1_EL1, SpecSEI, IMP), - MAX_FEAT(ID_AA64MMFR1_EL1, ETS, IMP), + MAX_FEAT(ID_AA64MMFR1_EL1, ETS, ETS3), MAX_FEAT(ID_AA64MMFR1_EL1, AFP, IMP), MAX_FEAT(ID_AA64MMFR1_EL1, TIDCP1, IMP), MAX_FEAT(ID_AA64MMFR1_EL1, CMOW, IMP), -- 2.47.3