KVM: arm/arm64: vgic: Add missing irq_lock to vgic_mmio_read_pending
authorAndre Przywara <andre.przywara@arm.com>
Tue, 6 Mar 2018 09:21:06 +0000 (09:21 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 30 May 2018 05:52:15 +0000 (07:52 +0200)
commit05c401183c2f55c96354be2a1174f8ae297ac1d2
treeba8df68cb1053ddab21efdf13793b7f3c5014487
parent6ef5b2e5241a2b74b9a8f6386eb742d2e42ad826
KVM: arm/arm64: vgic: Add missing irq_lock to vgic_mmio_read_pending

[ Upstream commit 62b06f8f429cd233e4e2e7bbd21081ad60c9018f ]

Our irq_is_pending() helper function accesses multiple members of the
vgic_irq struct, so we need to hold the lock when calling it.
Add that requirement as a comment to the definition and take the lock
around the call in vgic_mmio_read_pending(), where we were missing it
before.

Fixes: 96b298000db4 ("KVM: arm/arm64: vgic-new: Add PENDING registers handlers")
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
virt/kvm/arm/vgic/vgic-mmio.c
virt/kvm/arm/vgic/vgic.h