[PATCH v2 10/18] KVM: arm64: vgic-v5: Add missing trap handing for NV triage
Joey Gouly
joey.gouly at arm.com
Wed May 20 06:54:39 PDT 2026
On Wed, May 20, 2026 at 10:19:41AM +0100, Marc Zyngier wrote:
> From: Sascha Bischoff <sascha.bischoff at arm.com>
>
> As things stand, there is no support for Nested Virt with GICv5 guests
> yet. However, this is coming and therefore we need to be able to
> correctly triage the traps when running with NV.
>
> Add the missing fgtreg lookups required for that to
> triage_sysreg_trap(). These are specific to the FGT regs added as part
> of GICv5:
> * ICH_HFGRTR_EL2
> * ICH_HFGWTR_EL2
> * ICH_HFGITR_EL2
>
> Fixes: 9d6d9514c08f "(KVM: arm64: gic-v5: Support GICv5 FGTs & FGUs")
> Link: https://sashiko.dev/#/patchset/20260319154937.3619520-1-sascha.bischoff%40arm.com
> Signed-off-by: Sascha Bischoff <sascha.bischoff at arm.com>
> Signed-off-by: Marc Zyngier <maz at kernel.org>
Reviewed-by: Joey Gouly <joey.gouly at arm.com>
> ---
> arch/arm64/kvm/emulate-nested.c | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/arch/arm64/kvm/emulate-nested.c b/arch/arm64/kvm/emulate-nested.c
> index dba7ced74ca5e..a4eb36b4c4421 100644
> --- a/arch/arm64/kvm/emulate-nested.c
> +++ b/arch/arm64/kvm/emulate-nested.c
> @@ -2631,6 +2631,14 @@ bool triage_sysreg_trap(struct kvm_vcpu *vcpu, int *sr_index)
> fgtreg = HFGITR2_EL2;
> break;
>
> + case ICH_HFGRTR_GROUP:
> + fgtreg = is_read ? ICH_HFGRTR_EL2 : ICH_HFGWTR_EL2;
> + break;
> +
> + case ICH_HFGITR_GROUP:
> + fgtreg = ICH_HFGITR_EL2;
> + break;
> +
> default:
> /* Something is really wrong, bail out */
> WARN_ONCE(1, "Bad FGT group (encoding %08x, config %016llx)\n",
> --
> 2.47.3
>
More information about the linux-arm-kernel
mailing list