From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Bonzini Subject: Re: [PATCH v7 1/3] KVM: make halt_poll_ns per-vCPU Date: Sun, 6 Sep 2015 16:33:52 +0200 Message-ID: <55EC4ED0.90703@redhat.com> References: <1441289259-32072-1-git-send-email-wanpeng.li@hotmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Cc: David Matlack , kvm@vger.kernel.org, linux-kernel@vger.kernel.org To: Wanpeng Li Return-path: Received: from mx1.redhat.com ([209.132.183.28]:52510 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752164AbbIFOdq (ORCPT ); Sun, 6 Sep 2015 10:33:46 -0400 In-Reply-To: Sender: kvm-owner@vger.kernel.org List-ID: On 03/09/2015 16:07, Wanpeng Li wrote: > Change halt_poll_ns into per-VCPU variable, seeded from module parameter, > to allow greater flexibility. > > Signed-off-by: Wanpeng Li > --- > include/linux/kvm_host.h | 1 + > virt/kvm/kvm_main.c | 5 +++-- > 2 files changed, 4 insertions(+), 2 deletions(-) > > diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h > index 81089cf..1bef9e2 100644 > --- a/include/linux/kvm_host.h > +++ b/include/linux/kvm_host.h > @@ -242,6 +242,7 @@ struct kvm_vcpu { > int sigset_active; > sigset_t sigset; > struct kvm_vcpu_stat stat; > + unsigned int halt_poll_ns; > > #ifdef CONFIG_HAS_IOMEM > int mmio_needed; > diff --git a/virt/kvm/kvm_main.c b/virt/kvm/kvm_main.c > index d8db2f8f..c06e57c 100644 > --- a/virt/kvm/kvm_main.c > +++ b/virt/kvm/kvm_main.c > @@ -217,6 +217,7 @@ int kvm_vcpu_init(struct kvm_vcpu *vcpu, struct kvm *kvm, unsigned id) > vcpu->kvm = kvm; > vcpu->vcpu_id = id; > vcpu->pid = NULL; > + vcpu->halt_poll_ns = 0; > init_waitqueue_head(&vcpu->wq); > kvm_async_pf_vcpu_init(vcpu); > > @@ -1930,8 +1931,8 @@ void kvm_vcpu_block(struct kvm_vcpu *vcpu) > bool waited = false; > > start = cur = ktime_get(); > - if (halt_poll_ns) { > - ktime_t stop = ktime_add_ns(ktime_get(), halt_poll_ns); > + if (vcpu->halt_poll_ns) { > + ktime_t stop = ktime_add_ns(ktime_get(), vcpu->halt_poll_ns); > > do { > /* > Applied, thanks. Paolo