Patch Series

Subject KVM: arm64: Introduce vGIC-v5 with PPI support
Author sascha.bischoff@arm.com
Date 2026-01-28 17:59:35 +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 v4 01/36] KVM: arm64: Account for RES1 bits in DECLARE_FEAT_MAP() and co [Body]
[PATCH v4 02/36] KVM: arm64: gic-v3: Switch vGIC-v3 to use generated ICH_VMCR_EL2 [Body]
[PATCH v4 03/36] arm64/sysreg: Drop ICH_HFGRTR_EL2.ICC_HAPR_EL1 and make RES1 [Body]
[PATCH v4 04/36] arm64/sysreg: Add remaining GICv5 ICC_ & ICH_ sysregs for KVM support [Body]
[PATCH v4 05/36] arm64/sysreg: Add GICR CDNMIA encoding [Body]
[PATCH v4 06/36] KVM: arm64: gic: Set vgic_model before initing private IRQs [Body]
[PATCH v4 07/36] KVM: arm64: gic-v5: Add ARM_VGIC_V5 device to KVM headers [Body]
[PATCH v4 08/36] KVM: arm64: gic: Introduce interrupt type helpers [Body]
[PATCH v4 09/36] KVM: arm64: gic-v5: Add Arm copyright header [Body]
[PATCH v4 10/36] KVM: arm64: gic-v5: Detect implemented PPIs on boot [Body]
[PATCH v4 11/36] KVM: arm64: gic-v5: Sanitize ID_AA64PFR2_EL1.GCIE [Body]
[PATCH v4 12/36] KVM: arm64: gic-v5: Support GICv5 FGTs & FGUs [Body]
[PATCH v4 13/36] KVM: arm64: gic-v5: Add emulation for ICC_IAFFIDR_EL1 accesses [Body]
[PATCH v4 14/36] KVM: arm64: gic-v5: Add vgic-v5 save/restore hyp interface [Body]
[PATCH v4 15/36] KVM: arm64: gic-v5: Implement GICv5 load/put and save/restore [Body]
[PATCH v4 16/36] KVM: arm64: gic-v5: Implement direct injection of PPIs [Body]
[PATCH v4 17/36] KVM: arm64: gic-v5: Finalize GICv5 PPIs and generate mask [Body]
[PATCH v4 18/36] KVM: arm64: gic: Introduce queue_irq_unlock to irq_ops [Body]
[PATCH v4 19/36] KVM: arm64: gic-v5: Implement PPI interrupt injection [Body]
[PATCH v4 20/36] KVM: arm64: gic-v5: Init Private IRQs (PPIs) for GICv5 [Body]
[PATCH v4 21/36] KVM: arm64: gic-v5: Check for pending PPIs [Body]
[PATCH v4 22/36] KVM: arm64: gic-v5: Trap and mask guest ICC_PPI_ENABLERx_EL1 writes [Body]
[PATCH v4 23/36] KVM: arm64: gic-v5: Support GICv5 interrupts with KVM_IRQ_LINE [Body]
[PATCH v4 24/36] KVM: arm64: gic-v5: Create and initialise vgic_v5 [Body]
[PATCH v4 25/36] KVM: arm64: gic-v5: Reset vcpu state [Body]
[PATCH v4 26/36] KVM: arm64: gic-v5: Bump arch timer for GICv5 [Body]
[PATCH v4 27/36] KVM: arm64: gic-v5: Mandate architected PPI for PMU emulation on GICv5 [Body]
[PATCH v4 28/36] KVM: arm64: gic: Hide GICv5 for protected guests [Body]
[PATCH v4 29/36] KVM: arm64: gic-v5: Hide FEAT_GCIE from NV GICv5 guests [Body]
[PATCH v4 30/36] KVM: arm64: gic-v5: Introduce kvm_arm_vgic_v5_ops and register them [Body]
[PATCH v4 31/36] KVM: arm64: gic-v5: Set ICH_VCTLR_EL2.En on boot [Body]
[PATCH v4 32/36] irqchip/gic-v5: Check if impl is virt capable [Body]
[PATCH v4 33/36] KVM: arm64: gic-v5: Probe for GICv5 device [Body]
[PATCH v4 34/36] Documentation: KVM: Introduce documentation for VGICv5 [Body]
[PATCH v4 35/36] KVM: arm64: selftests: Introduce a minimal GICv5 PPI selftest [Body]
[PATCH v4 36/36] KVM: arm64: gic-v5: Communicate userspace-driveable PPIs via a UAPI [Body]

Session 2026-01-28

ID (for dev) f083df14-5157-4495-9ad7-a70e2af7988d
Status finished
Triaged OK [Log]
Execution Log [Link]
Test Base Patched Verdict
[KASAN] Build Base e89f0e9a0a007e8c3afb8ecd739c0b3255422b00 [Config] passed [Log]
[KASAN] Boot test: Base e89f0e9a0a007e8c3afb8ecd739c0b3255422b00 [Config] passed [Log]
[KASAN] Build Patched e89f0e9a0a007e8c3afb8ecd739c0b3255422b00 [Config] [patched] passed [Log]
[KASAN] Boot test: Patched e89f0e9a0a007e8c3afb8ecd739c0b3255422b00 [Config] [patched] passed [Log]
[KASAN] Fuzzing e89f0e9a0a007e8c3afb8ecd739c0b3255422b00 [Config] e89f0e9a0a007e8c3afb8ecd739c0b3255422b00 [Config] [patched] passed [Log] [Artifacts]