[PATCH v2 3/3] KVM: arm64: Limit clearing of ID_{AA64PFR0,PFR1}_EL1.GIC to userspace irqchip

Marc Zyngier maz at kernel.org
Mon Nov 10 05:11:05 PST 2025


On Mon, 10 Nov 2025 12:51:55 +0000,
Mark Brown <broonie at kernel.org> wrote:
> 
> On Thu, Oct 30, 2025 at 12:27:07PM +0000, Marc Zyngier wrote:
> > Now that the idreg's GIC field is in sync with the irqchip, limit
> > the runtime clearing of these fields to the pathological case where
> > we do not have an in-kernel GIC.
> > 
> > While we're at it, use the existing API instead of open-coded
> > accessors to access the ID regs.
> 
> Today's next/pending-fixes is showing regressions on a range of physical
> arm64 platforms (including at least a bunch of A53 systems, an A55 one
> and an A72 one) in the steal_time selftest which bisect to this patch.
> We get asserts in the kernel on ID register sets:
> 
> [  150.872407] WARNING: CPU: 0 PID: 2865 at arch/arm64/kvm/sys_regs.c:2353 kvm_set_vm_id_reg+0x9c/0xf4
> 
> ...
> 
> [  151.045312] Call trace:
> [  151.047780]  kvm_set_vm_id_reg+0x9c/0xf4 (P)
> [  151.052098]  kvm_finalize_sys_regs+0x88/0x240
> [  151.056504]  kvm_arch_vcpu_run_pid_change+0xb4/0x438
> [  151.061527]  kvm_vcpu_ioctl+0x92c/0x9d0

Please name the platforms this fails on. Here, on a sample of one A72
box, I don't see the issue:

	maz at sy-borg:~$ ./steal_time
	Random seed: 0x6b8b4567
	TAP version 13
	1..4
	ok 1 vcpu0
	ok 2 vcpu1
	ok 3 vcpu2
	ok 4 vcpu3
	# Totals: pass:4 fail:0 xfail:0 xpass:0 skip:0 error:0

Thanks,

	M.

-- 
Without deviation from the norm, progress is not possible.



More information about the linux-arm-kernel mailing list