From mboxrd@z Thu Jan 1 00:00:00 1970 From: Paolo Bonzini Subject: Re: [PATCH 2/2] x86/idle: use dynamic halt poll Date: Thu, 22 Jun 2017 13:51:14 +0200 Message-ID: <4444ffc8-9e7b-5bd2-20da-af422fe834cc@redhat.com> References: <1498130534-26568-1-git-send-email-root@ip-172-31-39-62.us-west-2.compute.internal> <1498130534-26568-3-git-send-email-root@ip-172-31-39-62.us-west-2.compute.internal> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Cc: x86@kernel.org, corbet@lwn.net, tony.luck@intel.com, bp@alien8.de, peterz@infradead.org, mchehab@kernel.org, akpm@linux-foundation.org, krzk@kernel.org, jpoimboe@redhat.com, luto@kernel.org, borntraeger@de.ibm.com, thgarnie@google.com, rgerst@gmail.com, minipli@googlemail.com, douly.fnst@cn.fujitsu.com, nicstange@gmail.com, fweisbec@gmail.com, dvlasenk@redhat.com, bristot@redhat.com, yamada.masahiro@socionext.com, mika.westerberg@linux.intel.com, yu.c.chen@intel.com, aaron.lu@intel.com, rostedt@goodmis.org, me@kylehuey.com, len.brown@intel.com, prarit@redhat.com, hidehiro.kawai.ez@hitachi.com, fengtiantian@huawei.com, pmladek@suse.com, jeyu@redhat.com, Larry.Finger@lwfinger.net, zijun_hu@htc.com, luisbg@osg.samsung.com, johannes.berg@intel.com, niklas.soderlund+renesas@ragnatech.se To: root , tglx@linutronix.de, mingo@redhat.com, hpa@zytor.com Return-path: In-Reply-To: <1498130534-26568-3-git-send-email-root@ip-172-31-39-62.us-west-2.compute.internal> Content-Language: en-US Sender: linux-doc-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On 22/06/2017 13:22, root wrote: > ============================================================== > > +poll_grow: (X86 only) > + > +This parameter is multiplied in the grow_poll_ns() to increase the poll time. > +By default, the values is 2. > + > +============================================================== > +poll_shrink: (X86 only) > + > +This parameter is divided in the shrink_poll_ns() to reduce the poll time. > +By default, the values is 2. Even before starting the debate on whether this is a good idea or a bad idea, KVM reduces the polling value to the minimum (10 us) by default when polling fails. Also, it shouldn't be bound to CONFIG_HYPERVISOR_GUEST, since there's nothing specific to virtual machines here. Regarding the good/bad idea part, KVM's polling is made much more acceptable by single_task_running(). At least you need to integrate it with paravirtualization. If the VM is scheduled out, you shrink the polling period. There is already vcpu_is_preempted for this, it is used by mutexes. Paolo