[PATCH v2 0/3] KVM: arm64: Fix handling of ID_PFR1_EL1.GIC
Suzuki K Poulose
suzuki.poulose at arm.com
Fri Nov 7 02:06:23 PST 2025
Hi Marc
On 30/10/2025 12:27, Marc Zyngier wrote:
> Peter reported[0] that restoring a GICv2 VM fails badly, and correctly
> points out that ID_PFR1_EL1.GIC isn't writable, while its 64bit
> equivalent is. I broke that in 6.12.
>
> The other thing is that fixing the ID regs at runtime isn't great.
> specially when we could adjust them at the point where the GIC gets
> created.
>
> This small series aims at fixing these issues. I've only tagged the
> first one as a stable candidate.
But, all 3 patches have the same Fixes tag, was that intentional ?
Otherwise looks good.
Suzuki
With these fixes, I can happily
> save/restore a GICv2 VM (both 32 and 64bit) on my trusty Synquacer.
>
> * From v1 [1]:
>
> - Make all 32bit ID regs writable
>
> - Use official accessors to manipulate ID regs
>
> - Rebased on 6.18-rc3
>
> [0] https://lore.kernel.org/r/CAFEAcA8TpQduexT=8rdRYC=yxm_073COjzgWJAvc26_T+-F5vA@mail.gmail.com
> [3] https://lore.kernel.org/r/20251013083207.518998-1-maz@kernel.org
>
> Marc Zyngier (3):
> KVM: arm64: Make all 32bit ID registers fully writable
> KVM: arm64: Set ID_{AA64PFR0,PFR1}_EL1.GIC when GICv3 is configured
> KVM: arm64: Limit clearing of ID_{AA64PFR0,PFR1}_EL1.GIC to userspace
> irqchip
>
> arch/arm64/kvm/sys_regs.c | 71 ++++++++++++++++++---------------
> arch/arm64/kvm/vgic/vgic-init.c | 14 ++++++-
> 2 files changed, 50 insertions(+), 35 deletions(-)
>
More information about the linux-arm-kernel
mailing list