Patch Series

Subject KVM: arm64: Introduce vGIC-v5 with PPI support
Author sascha.bischoff@arm.com
Date 2026-02-26 15:55:41 +0000 UTC
Version
Cc joey.gouly@arm.com jonathan.cameron@huawei.com kvm@vger.kernel.org kvmarm@lists.linux.dev linux-arm-kernel@lists.infradead.org lpieralisi@kernel.org maz@kernel.org nd@arm.com oliver.upton@linux.dev peter.maydell@linaro.org sascha.bischoff@arm.com suzuki.poulose@arm.com timothy.hayes@arm.com yuzenghui@huawei.com

Patches (36)

Name Content [All]
[PATCH v5 01/36] KVM: arm64: vgic-v3: Drop userspace write sanitization for ID_AA64PFR0.GIC on GICv5 [Body]
[PATCH v5 02/36] KVM: arm64: vgic: Rework vgic_is_v3() and add vgic_host_has_gicvX() [Body]
[PATCH v5 03/36] KVM: arm64: Return early from kvm_finalize_sys_regs() if guest has run [Body]
[PATCH v5 04/36] arm64/sysreg: Add remaining GICv5 ICC_ & ICH_ sysregs for KVM support [Body]
[PATCH v5 05/36] arm64/sysreg: Add GICR CDNMIA encoding [Body]
[PATCH v5 06/36] KVM: arm64: gic-v5: Add ARM_VGIC_V5 device to KVM headers [Body]
[PATCH v5 07/36] KVM: arm64: gic: Introduce interrupt type helpers [Body]
[PATCH v5 08/36] KVM: arm64: gic-v5: Add Arm copyright header [Body]
[PATCH v5 09/36] KVM: arm64: gic-v5: Detect implemented PPIs on boot [Body]
[PATCH v5 10/36] KVM: arm64: gic-v5: Sanitize ID_AA64PFR2_EL1.GCIE [Body]
[PATCH v5 11/36] KVM: arm64: gic-v5: Support GICv5 FGTs & FGUs [Body]
[PATCH v5 12/36] KVM: arm64: gic-v5: Add emulation for ICC_IAFFIDR_EL1 accesses [Body]
[PATCH v5 13/36] KVM: arm64: gic-v5: Trap and emulate ICC_IDR0_EL1 accesses [Body]
[PATCH v5 14/36] KVM: arm64: gic-v5: Add vgic-v5 save/restore hyp interface [Body]
[PATCH v5 15/36] KVM: arm64: gic-v5: Implement GICv5 load/put and save/restore [Body]
[PATCH v5 16/36] KVM: arm64: gic-v5: Implement direct injection of PPIs [Body]
[PATCH v5 17/36] KVM: arm64: gic-v5: Finalize GICv5 PPIs and generate mask [Body]
[PATCH v5 18/36] KVM: arm64: gic: Introduce queue_irq_unlock to irq_ops [Body]
[PATCH v5 19/36] KVM: arm64: gic-v5: Implement PPI interrupt injection [Body]
[PATCH v5 20/36] KVM: arm64: gic-v5: Init Private IRQs (PPIs) for GICv5 [Body]
[PATCH v5 21/36] KVM: arm64: gic-v5: Check for pending PPIs [Body]
[PATCH v5 22/36] KVM: arm64: gic-v5: Trap and mask guest ICC_PPI_ENABLERx_EL1 writes [Body]
[PATCH v5 23/36] KVM: arm64: gic-v5: Support GICv5 interrupts with KVM_IRQ_LINE [Body]
[PATCH v5 24/36] KVM: arm64: gic-v5: Create and initialise vgic_v5 [Body]
[PATCH v5 25/36] KVM: arm64: gic-v5: Initialise ID and priority bits when resetting vcpu [Body]
[PATCH v5 26/36] KVM: arm64: gic-v5: Enlighten arch timer for GICv5 [Body]
[PATCH v5 27/36] KVM: arm64: gic-v5: Mandate architected PPI for PMU emulation on GICv5 [Body]
[PATCH v5 28/36] KVM: arm64: gic: Hide GICv5 for protected guests [Body]
[PATCH v5 29/36] KVM: arm64: gic-v5: Hide FEAT_GCIE from NV GICv5 guests [Body]
[PATCH v5 30/36] KVM: arm64: gic-v5: Introduce kvm_arm_vgic_v5_ops and register them [Body]
[PATCH v5 31/36] KVM: arm64: gic-v5: Set ICH_VCTLR_EL2.En on boot [Body]
[PATCH v5 32/36] KVM: arm64: gic-v5: Probe for GICv5 device [Body]
[PATCH v5 33/36] Documentation: KVM: Introduce documentation for VGICv5 [Body]
[PATCH v5 34/36] KVM: arm64: selftests: Introduce a minimal GICv5 PPI selftest [Body]
[PATCH v5 35/36] KVM: arm64: gic-v5: Communicate userspace-driveable PPIs via a UAPI [Body]
[PATCH v5 36/36] KVM: arm64: selftests: Add no-vgic-v5 selftest [Body]

Session 2026-02-26

ID (for dev) 9f5681fc-b297-4d0a-9602-796a11db26fb
Status finished
Triaged OK [Log]
Execution Log [Link]
Test Base Patched Verdict
[KASAN] Build Base 3f4a08e64442340f4807de63e30aef22cc308830 [Config] passed [Log]
[KASAN] Boot test: Base 3f4a08e64442340f4807de63e30aef22cc308830 [Config] passed [Log]
[KASAN] Build Patched 3f4a08e64442340f4807de63e30aef22cc308830 [Config] [patched] passed [Log]
[KASAN] Boot test: Patched 3f4a08e64442340f4807de63e30aef22cc308830 [Config] [patched] passed [Log]
[KASAN] Fuzz 3f4a08e64442340f4807de63e30aef22cc308830 [Config] 3f4a08e64442340f4807de63e30aef22cc308830 [Config] [patched] passed [Log] [Artifacts]