linux/virt/kvm
Marc Zyngier c9fdda04b9 KVM: arm/arm64: vgic: Avoid injecting reserved IRQ numbers
[ Upstream commit 4839ddc27b ]

Commit fd1d0ddf2a (KVM: arm/arm64: check IRQ number on userland
injection) rightly limited the range of interrupts userspace can
inject in a guest, but failed to consider the (unlikely) case where
a guest is configured with 1024 interrupts.

In this case, interrupts ranging from 1020 to 1023 are unuseable,
as they have a special meaning for the GIC CPU interface.

Make sure that these number cannot be used as an IRQ. Also delete
a redundant (and similarily buggy) check in kvm_set_irq.

Reported-by: Peter Maydell <peter.maydell@linaro.org>
Cc: Andre Przywara <andre.przywara@arm.com>
Cc: <stable@vger.kernel.org> # 4.1, 4.0, 3.19, 3.18
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
History 2015-07-03 23:02:33 -04:00
..
arm KVM: arm/arm64: vgic: Avoid injecting reserved IRQ numbers 2015-07-03 23:02:33 -04:00
assigned-dev.c KVM: Use PCI device flag helper functions 2014-09-16 16:18:40 -06:00
async_pf.c kvm: Faults which trigger IO release the mmap_sem 2014-09-24 14:07:54 +02:00
async_pf.h KVM: Halt vcpu if page it tries to access is swapped out 2011-01-12 11:21:39 +02:00
coalesced_mmio.c KVM: return an error code in kvm_vm_ioctl_register_coalesced_mmio() 2014-01-30 11:56:09 +01:00
coalesced_mmio.h KVM: Make coalesced mmio use a device per zone 2011-09-25 19:17:57 +03:00
eventfd.c KVM: EVENTFD: Remove inclusion of irq.h 2014-09-24 12:06:25 +02:00
ioapic.c kvm: ioapic: conditionally delay irq delivery duringeoi broadcast 2014-09-16 14:44:48 +02:00
ioapic.h kvm: ioapic: conditionally delay irq delivery duringeoi broadcast 2014-09-16 14:44:48 +02:00
iodev.h KVM: remove in_range from io devices 2009-09-10 08:33:05 +03:00
iommu.c kvm: fix excessive pages un-pinning in kvm_iommu_map error path. 2014-10-24 13:30:37 +02:00
irq_comm.c KVM: Move all accesses to kvm::irq_routing into irqchip.c 2014-08-05 14:26:20 +02:00
irqchip.c KVM: Move irq notifier implementation into eventfd.c 2014-08-05 14:26:24 +02:00
Kconfig KVM: Give IRQFD its own separate enabling Kconfig option 2014-08-05 14:26:28 +02:00
kvm_main.c KVM: use slowpath for cross page cached accesses 2015-05-17 19:11:49 -04:00
vfio.c kvm: vfio: fix unregister kvm_device_ops of vfio 2014-10-24 13:30:47 +02:00
vfio.h kvm: vfio: fix unregister kvm_device_ops of vfio 2014-10-24 13:30:47 +02:00