KVM: arm/arm64: timer: remove request-less vcpu kick
authorAndrew Jones <drjones@redhat.com>
Sun, 4 Jun 2017 12:44:01 +0000 (14:44 +0200)
committerChristoffer Dall <cdall@linaro.org>
Sun, 4 Jun 2017 14:53:57 +0000 (16:53 +0200)
The timer work is only scheduled for a VCPU when that VCPU is
blocked. This means we only need to wake it up, not kick (IPI)
it. While calling kvm_vcpu_kick() would just do the wake up,
and not kick, anyway, let's change this to avoid request-less
vcpu kicks, as they're generally not a good idea (see
"Request-less VCPU Kicks" in
Documentation/virtual/kvm/vcpu-requests.rst)

Signed-off-by: Andrew Jones <drjones@redhat.com>
Reviewed-by: Christoffer Dall <cdall@linaro.org>
Signed-off-by: Christoffer Dall <cdall@linaro.org>
virt/kvm/arm/arch_timer.c

index 5976609ef27cb9bf47ca997e08be38833d51f5d3..7933b1f8f7b72382c54f08050d8ad2fccf461298 100644 (file)
@@ -95,7 +95,7 @@ static void kvm_timer_inject_irq_work(struct work_struct *work)
         * If the vcpu is blocked we want to wake it up so that it will see
         * the timer has expired when entering the guest.
         */
-       kvm_vcpu_kick(vcpu);
+       kvm_vcpu_wake_up(vcpu);
 }
 
 static u64 kvm_timer_compute_delta(struct arch_timer_context *timer_ctx)