diff mbox

KVM: ARM: arch_timer: Add comment about timer mask

Message ID 1380349277-3483-1-git-send-email-christoffer.dall@linaro.org
State New
Headers show

Commit Message

Christoffer Dall Sept. 28, 2013, 6:21 a.m. UTC
It is quite subtle why we mask the timer on behalf of the guest when
then guest has programmed the timer and it fires and is handled on the
host.

Add a comment to that effect.

Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
---
 virt/kvm/arm/arch_timer.c |    6 ++++++
 1 file changed, 6 insertions(+)
diff mbox

Patch

diff --git a/virt/kvm/arm/arch_timer.c b/virt/kvm/arm/arch_timer.c
index c2e1ef4..8168437 100644
--- a/virt/kvm/arm/arch_timer.c
+++ b/virt/kvm/arm/arch_timer.c
@@ -63,6 +63,12 @@  static void kvm_timer_inject_irq(struct kvm_vcpu *vcpu)
 {
 	struct arch_timer_cpu *timer = &vcpu->arch.timer_cpu;
 
+	/*
+	 * Mask the virtual timer, because otherwise, the guest would never
+	 * execute its interrupt handler because the virtual timer interrupt
+	 * would continously preempt guest execution as the hardware interrupt
+	 * traps to Hyp mode.
+	 */
 	timer->cntv_ctl |= ARCH_TIMER_CTRL_IT_MASK;
 	kvm_vgic_inject_irq(vcpu->kvm, vcpu->vcpu_id,
 			    timer->irq->irq,