From mboxrd@z Thu Jan 1 00:00:00 1970 From: Christoffer Dall Subject: Re: [PATCH v4 11/11] KVM: arm/arm64: timer: remove request-less vcpu kick Date: Thu, 1 Jun 2017 12:34:54 +0200 Message-ID: <20170601103454.GA20919@cbox> References: <20170516022035.7674-1-drjones@redhat.com> <20170516022035.7674-12-drjones@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Cc: marc.zyngier@arm.com, pbonzini@redhat.com, kvmarm@lists.cs.columbia.edu, kvm@vger.kernel.org To: Andrew Jones Return-path: Content-Disposition: inline In-Reply-To: <20170516022035.7674-12-drjones@redhat.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kvmarm-bounces@lists.cs.columbia.edu Sender: kvmarm-bounces@lists.cs.columbia.edu List-Id: kvm.vger.kernel.org On Tue, May 16, 2017 at 04:20:35AM +0200, Andrew Jones wrote: > 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 > --- > virt/kvm/arm/arch_timer.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/virt/kvm/arm/arch_timer.c b/virt/kvm/arm/arch_timer.c > index 5976609ef27c..c9cd56f39b1e 100644 > --- a/virt/kvm/arm/arch_timer.c > +++ b/virt/kvm/arm/arch_timer.c > @@ -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); > + swake_up(kvm_arch_vcpu_wq(vcpu)); We have kvm_vcpu_wake_up(). Why not use that? Thanks, -Christoffer > } > > static u64 kvm_timer_compute_delta(struct arch_timer_context *timer_ctx) > -- > 2.9.3 >