linux/virt/kvm/arm
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
..
arch_timer.c arm/arm64: KVM: Require in-kernel vgic for the arch timers 2015-05-11 07:07:34 -04:00
vgic-v2.c arm/arm64: KVM: Keep elrsr/aisr in sync with software model 2015-05-11 07:07:37 -04:00
vgic-v3.c arm/arm64: KVM: Keep elrsr/aisr in sync with software model 2015-05-11 07:07:37 -04:00
vgic.c KVM: arm/arm64: vgic: Avoid injecting reserved IRQ numbers 2015-07-03 23:02:33 -04:00