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 8E5A2C44524 for ; Thu, 23 Jul 2026 08:07:34 +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=SS5Fq1fjhacEFCwY09UnpGTFkVdqZKZLoS3gtTzDLmM=; b=b6uuwTeaTTromo+++YtEFHE8Oa cDFzM7LqMPL47rPq+fDnw7XQLS9JYd5ok20/bbBIgLEw1ySDghicRhya+0jBk+2i4trLhQ8b+ig0i Kz6F/yAvtkh7gnC9mbM51VmMh9m4Knxk/O6DZQdkS/FKUpYzYDkwiPb0d8P+86XsZicWDmhTi2CFw 8CGkhLq+n4mMYjLbCCD3Zyb09sVxc2NVs6lkYPtRk3GV9aq64JbrWMuF6RE2lV5OLfoF8kVr/W6Hc Dfw6+IKi5p+P2duMvde5RzYZ2+utGwYiJe19ymhE7f85jBlj29niDFb1N4viPObmZgpms1ujRynAK NBSA2x4w==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1wmoSk-0000000DhFj-31fs; Thu, 23 Jul 2026 08:07:26 +0000 Received: from sea.source.kernel.org ([2600:3c0a:e001:78e:0:1991:8:25]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1wmoSi-0000000DhFZ-451k for linux-arm-kernel@lists.infradead.org; Thu, 23 Jul 2026 08:07:25 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by sea.source.kernel.org (Postfix) with ESMTP id 5E3664143B; Thu, 23 Jul 2026 08:07:24 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 50D211F000E9; Thu, 23 Jul 2026 08:07:24 +0000 (UTC) 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.98.2) (envelope-from ) id 1wmoSd-00000007wI9-39fQ; Thu, 23 Jul 2026 08:07:19 +0000 Date: Thu, 23 Jul 2026 09:07:19 +0100 Message-ID: <868q72dt8o.wl-maz@kernel.org> From: Marc Zyngier To: Kohei Enju Cc: Steven Price , kvm@vger.kernel.org, kvmarm@lists.linux.dev, Catalin Marinas , Will Deacon , James Morse , Oliver Upton , Suzuki K Poulose , Zenghui Yu , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Joey Gouly , Alexandru Elisei , Christoffer Dall , Fuad Tabba , linux-coco@lists.linux.dev, Ganapatrao Kulkarni , Gavin Shan , Shanker Donthineni , Alper Gun , "Aneesh Kumar K . V" , Emi Kisanuki , Vishal Annapurve , WeiLin.Chang@arm.com, Lorenzo Pieralisi Subject: Re: [PATCH v15 12/37] KVM: arm64: CCA: Support the VGIC in realms In-Reply-To: References: <20260715142841.80544-1-steven.price@arm.com> <20260715142841.80544-13-steven.price@arm.com> <86cxwfe5m8.wl-maz@kernel.org> 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: enju.kohei@fujitsu.com, steven.price@arm.com, kvm@vger.kernel.org, kvmarm@lists.linux.dev, catalin.marinas@arm.com, will@kernel.org, james.morse@arm.com, oliver.upton@linux.dev, suzuki.poulose@arm.com, yuzenghui@huawei.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, joey.gouly@arm.com, alexandru.elisei@arm.com, christoffer.dall@arm.com, tabba@google.com, linux-coco@lists.linux.dev, gankulkarni@os.amperecomputing.com, gshan@redhat.com, sdonthineni@nvidia.com, alpergun@google.com, aneesh.kumar@kernel.org, fj0570is@fujitsu.com, vannapurve@google.com, WeiLin.Chang@arm.com, lpieralisi@kernel.org X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false 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 Thu, 23 Jul 2026 07:38:16 +0100, Kohei Enju wrote: > > On 07/22 10:27, Marc Zyngier wrote: > > > > > > As far as I can tell, the CCA requirements don't require the > > > ARM64_HAS_ICH_HCR_EL2_TDIR feature. If that's the case, this seems to be a > > > problem. Is there any workaround for this issue, or should we implement trap > > > handlers for those registers? > > > > No. Either you support TDIR, like any modern CPU, or you don't run > > CCA. I'm not adding yet another level of emulation for this. > > However, I'm still not aware of any requirement in the CCA architecture, > or in Armv8-A/Armv9-A, that mandates TDIR support. The GICv3 architecture has deprecated the lack of TDIR support since the very first release of the specification in 2015, because it was quickly identified as an architecture bug. CCA mandates GICv3 support as written in the spec, and relying on deprecated features 11 years later is not acceptable. By any definition, this is buggy hardware, and I don't feel a strong urge to support it. > > When you say "you don't run CCA", is that because the architecture > requires it, See above. > or because that's the current KVM policy? If it's the > latter, we'd be interested in adding the required emulation to make it > work. And I say no to this. Enough. This isn't a "policy*. This is a hard red line. "Do Not Cross". We already have the most complicated interrupt architecture ever, and I have zero desire to add even more complexity to it. Because I'm the idiot who ends-up maintaining this horror, and not you. So no, no more emulation code. CCA in KVM won't handle systems that do not support TDIR, unless you rewrite the CCA support so that it can use the *existing* emulation code without any change. Thanks, M. -- Without deviation from the norm, progress is not possible.