OSDN Git Service

KVM: arm/arm64: vgic: Do not cond_resched_lock() with IRQs disabled
authorJulien Thierry <julien.thierry@arm.com>
Mon, 26 Nov 2018 18:26:44 +0000 (18:26 +0000)
committerMarc Zyngier <marc.zyngier@arm.com>
Tue, 18 Dec 2018 15:14:49 +0000 (15:14 +0000)
commit2e2f6c3c0b08eed3fcf7de3c7684c940451bdeb1
treee790bdc796515059a8976644e056df0b2f9029d1
parentb8e0ba7c8bea994011aff3b4c35256b180fab874
KVM: arm/arm64: vgic: Do not cond_resched_lock() with IRQs disabled

To change the active state of an MMIO, halt is requested for all vcpus of
the affected guest before modifying the IRQ state. This is done by calling
cond_resched_lock() in vgic_mmio_change_active(). However interrupts are
disabled at this point and we cannot reschedule a vcpu.

We actually don't need any of this, as kvm_arm_halt_guest ensures that
all the other vcpus are out of the guest. Let's just drop that useless
code.

Signed-off-by: Julien Thierry <julien.thierry@arm.com>
Suggested-by: Christoffer Dall <christoffer.dall@arm.com>
Cc: stable@vger.kernel.org
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
virt/kvm/arm/vgic/vgic-mmio.c