]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
KVM: arm/arm64: vgic: Make vgic_dist->lpi_list_lock a raw_spinlock
authorJulien Thierry <julien.thierry@arm.com>
Mon, 7 Jan 2019 15:06:16 +0000 (15:06 +0000)
committerKleber Sacilotto de Souza <kleber.souza@canonical.com>
Wed, 14 Aug 2019 09:18:49 +0000 (11:18 +0200)
commit50f82406b06f6cbc1b7681d89f904bc02472df51
treeae6c8d1bbc16ce20ed01eaeb06d30fbdb6f8721c
parentc8a4982d11b18a9c710ab1e26395268edb1896ec
KVM: arm/arm64: vgic: Make vgic_dist->lpi_list_lock a raw_spinlock

BugLink: https://bugs.launchpad.net/bugs/1837952
[ Upstream commit fc3bc475231e12e9c0142f60100cf84d077c79e1 ]

vgic_dist->lpi_list_lock must always be taken with interrupts disabled as
it is used in interrupt context.

For configurations such as PREEMPT_RT_FULL, this means that it should
be a raw_spinlock since RT spinlocks are interruptible.

Signed-off-by: Julien Thierry <julien.thierry@arm.com>
Acked-by: Christoffer Dall <christoffer.dall@arm.com>
Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@arm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Khalid Elmously <khalid.elmously@canonical.com>
include/kvm/arm_vgic.h
virt/kvm/arm/vgic/vgic-init.c
virt/kvm/arm/vgic/vgic-its.c
virt/kvm/arm/vgic/vgic.c