From mboxrd@z Thu Jan 1 00:00:00 1970 From: Cornelia Huck Subject: Re: [PATCH/RFC] KVM: halt_polling: provide a way to qualify wakeups during poll Date: Tue, 3 May 2016 10:00:23 +0200 Message-ID: <20160503100023.274b0f11.cornelia.huck@de.ibm.com> References: <1462185753-14634-1-git-send-email-borntraeger@de.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Sender: kvm-owner@vger.kernel.org List-Archive: List-Post: To: Wanpeng Li Cc: Christian Borntraeger , Paolo Bonzini , Radim =?UTF-8?B?S3LEjW3DocWZ?= , KVM , linux-s390 , Jens Freimann , David Hildenbrand List-ID: On Tue, 3 May 2016 15:50:25 +0800 Wanpeng Li wrote: > 2016-05-02 18:42 GMT+08:00 Christian Borntraeger : > [...] > > Some wakeups should not be considered a sucessful poll. For example on > > s390 I/O interrupts are usually floating, which means that _ALL_ CPUs > > would be considered runnable - letting all vCPUs poll all the time for > > transactional like workload, even if one vCPU would be enough. > > This can result in huge CPU usage for large guests. > > This patch lets architectures provide a way to qualify wakeups if they > > should be considered a good/bad wakeups in regard to polls. > > > > For s390 the implementation will fence of halt polling for anything but > > known good, single vCPU events. The s390 implementation for floating > > interrupts does a wakeup for one vCPU, but the interrupt will be delivered > > by whatever CPU comes first. To limit the halt polling we only mark the > > If the floating interrupt means that the 'CPU comes first' will > deliver the interrupt to all vCPUs? Floating interrupt on s390 means "deliver on any vcpu that matches the criteria, but only on one".