summaryrefslogtreecommitdiff
path: root/virt/kvm/arm/arch_timer.c
diff options
context:
space:
mode:
authorAndre Przywara <andre.przywara@arm.com>2016-04-13 10:03:49 +0100
committerChristoffer Dall <christoffer.dall@linaro.org>2016-05-20 15:39:38 +0200
commite262f4193638fff2de458f0c70284f0cb50926a7 (patch)
treeccee602ddeb5337a1dc38f49cd659f00f4a07813 /virt/kvm/arm/arch_timer.c
parent4f551a3d96a2de85a041ee60e806bda1d5b06255 (diff)
downloadlinux-next-e262f4193638fff2de458f0c70284f0cb50926a7.tar.gz
KVM: arm/arm64: vgic: avoid map in kvm_vgic_map_is_active()
For getting the active state of a mapped IRQ, we actually only need the virtual IRQ number, not the pointer to the mapping entry. Pass the virtual IRQ number from the arch timer to the VGIC directly. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Eric Auger <eric.auger@linaro.org> Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Diffstat (limited to 'virt/kvm/arm/arch_timer.c')
-rw-r--r--virt/kvm/arm/arch_timer.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/virt/kvm/arm/arch_timer.c b/virt/kvm/arm/arch_timer.c
index a9c6c1c59d38..37f82c1c6bb7 100644
--- a/virt/kvm/arm/arch_timer.c
+++ b/virt/kvm/arm/arch_timer.c
@@ -274,10 +274,8 @@ void kvm_timer_flush_hwstate(struct kvm_vcpu *vcpu)
* to ensure that hardware interrupts from the timer triggers a guest
* exit.
*/
- if (timer->irq.level || kvm_vgic_map_is_active(vcpu, timer->map))
- phys_active = true;
- else
- phys_active = false;
+ phys_active = timer->irq.level ||
+ kvm_vgic_map_is_active(vcpu, timer->map->virt_irq);
/*
* We want to avoid hitting the (re)distributor as much as