[PATCH v2 0/4] KVM: arm64: GICv5 KVM IRS review fixes

Sascha Bischoff <[email protected]>
Newsgroups dev.linux.lists.kvmarm,org.infradead.lists.linux-arm-kernel,org.kernel.vger.kvm
Message-ID <[email protected]>
Hi all,

v1 [1] combined irqchip and KVM fixes identified by Sashiko [2] while
reviewing the GICv5 KVM IRS series [3]. Following feedback, v2 splits
the fixes into separate irqchip and KVM postings. This posting
contains the KVM fixes; the irqchip fixes are posted separately.

Changes since v1:

* Split the combined series into irqchip and KVM postings.

* Extend the out-of-range GICv5 PPI fix to reject unsupported PPIs at
  the type-validation boundary as well as in the lookup path.

* Add a fix to validate a GICv5 timer PPI before claiming its IRQ.

The fixes are:

* Free gic_kvm_info when vGIC initialisation fails because the
  maintenance interrupt is not provided but is required.

* Fix speculative accesses in the common vGIC SPI lookup which could
  previously underflow. The SPI index is now made relative to the SPI
  array before array_index_nospec() constrains it rather than
  afterwards.

* Reject GICv5 PPIs outside KVM's supported private IRQ range. These
  were previously classified as PPIs and clamped to zero, aliasing
  private IRQ 0.

* Validate the architecturally fixed GICv5 timer PPI before claiming it
  with the vGIC.

These changes are based on v7.2-rc7.

Thanks,
Sascha

[1] https://lore.kernel.org/all/[email protected]/
[2] https://sashiko.dev/#/patchset/20260724104819.1296803-1-sascha.bischoff%40arm.com
[3] https://lore.kernel.org/all/[email protected]/

Sascha Bischoff (4):
  KVM: arm64: vgic: Free gic_kvm_info on initialization failure
  KVM: arm64: vgic: Prevent speculative SPI array underflow
  KVM: arm64: vgic: Reject out-of-range GICv5 PPI IDs
  KVM: arm64: Validate GICv5 timer PPIs before claiming ownership

 arch/arm64/kvm/arch_timer.c     | 5 +++--
 arch/arm64/kvm/vgic/vgic-init.c | 4 +++-
 arch/arm64/kvm/vgic/vgic.c      | 7 +++++--
 include/kvm/arm_vgic.h          | 2 ++
 4 files changed, 13 insertions(+), 5 deletions(-)

-- 
2.34.1
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.