All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marc Zyngier <maz@kernel.org>
To: kvmarm@lists.linux.dev, kvm@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org
Cc: Joey Gouly <joey.gouly@arm.com>,
	Suzuki K Poulose <suzuki.poulose@arm.com>,
	Oliver Upton <oupton@kernel.org>,
	Zenghui Yu <yuzenghui@huawei.com>,
	Ben Horgan <ben.horgan@arm.com>
Subject: [PATCH v2 2/5] KVM: arm64: Force trap of GMID_EL1 when the guest doesn't have MTE
Date: Wed, 26 Nov 2025 15:59:48 +0000	[thread overview]
Message-ID: <20251126155951.1146317-3-maz@kernel.org> (raw)
In-Reply-To: <20251126155951.1146317-1-maz@kernel.org>

If our host has MTE, but the guest doesn't, make sure we set HCR_EL2.TID5
to force GMID_EL1 being trapped.

Reviewed-by: Joey Gouly <joey.gouly@arm.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
---
 arch/arm64/kvm/sys_regs.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/arch/arm64/kvm/sys_regs.c b/arch/arm64/kvm/sys_regs.c
index 9e4c46fbfd802..2ca6862e935b5 100644
--- a/arch/arm64/kvm/sys_regs.c
+++ b/arch/arm64/kvm/sys_regs.c
@@ -5561,6 +5561,8 @@ static void vcpu_set_hcr(struct kvm_vcpu *vcpu)
 
 	if (kvm_has_mte(vcpu->kvm))
 		vcpu->arch.hcr_el2 |= HCR_ATA;
+	else if (id_aa64pfr1_mte(read_sanitised_ftr_reg(SYS_ID_AA64PFR1_EL1)))
+		vcpu->arch.hcr_el2 |= HCR_TID5;
 
 	/*
 	 * In the absence of FGT, we cannot independently trap TLBI
-- 
2.47.3


  parent reply	other threads:[~2025-11-26 16:00 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-26 15:59 [PATCH v2 0/5] KVM: arm64: Add support for FEAT_IDST Marc Zyngier
2025-11-26 15:59 ` [PATCH v2 1/5] KVM: arm64: Add routing/handling for GMID_EL1 Marc Zyngier
2025-11-26 15:59 ` Marc Zyngier [this message]
2025-11-27  5:52   ` [PATCH v2 2/5] KVM: arm64: Force trap of GMID_EL1 when the guest doesn't have MTE Yao Yuan
2025-11-27  6:37   ` Oliver Upton
2025-11-27 16:31     ` Marc Zyngier
2025-11-26 15:59 ` [PATCH v2 3/5] KVM: arm64: Add a generic synchronous exception injection primitive Marc Zyngier
2025-11-26 16:58   ` Ben Horgan
2025-11-27  5:57   ` Yao Yuan
2025-11-26 15:59 ` [PATCH v2 4/5] KVM: arm64: Report optional ID register traps with a 0x18 syndrome Marc Zyngier
2025-11-26 17:10   ` Ben Horgan
2025-11-26 17:14     ` Ben Horgan
2025-11-27  6:07   ` Yao Yuan
2025-11-27  6:43     ` Oliver Upton
2025-11-27 16:35       ` Marc Zyngier
2025-11-26 15:59 ` [PATCH v2 5/5] KVM: arm64: selftests: Add a test for FEAT_IDST Marc Zyngier
2025-11-27 16:38 ` [PATCH v2 0/5] KVM: arm64: Add support " Marc Zyngier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251126155951.1146317-3-maz@kernel.org \
    --to=maz@kernel.org \
    --cc=ben.horgan@arm.com \
    --cc=joey.gouly@arm.com \
    --cc=kvm@vger.kernel.org \
    --cc=kvmarm@lists.linux.dev \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=oupton@kernel.org \
    --cc=suzuki.poulose@arm.com \
    --cc=yuzenghui@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.