From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH RFC V2 3/5] kvm hypervisor : Add two hypercalls to support pv-ticketlock Date: Mon, 24 Oct 2011 15:09:25 +0200 Message-ID: <4EA56385.9040302@redhat.com> References: <20111023190307.16364.35381.sendpatchset@oc5400248562.ibm.com> <20111023190558.16364.2136.sendpatchset@oc5400248562.ibm.com> <4EA53A7D.300@redhat.com> <20111024122734.GA10634@linux.vnet.ibm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: Raghavendra K T , Greg Kroah-Hartman , "H. Peter Anvin" , Gleb Natapov , Virtualization , Jeremy Fitzhardinge , x86@kernel.org, KVM , Dave Jiang , Thomas Gleixner , Stefano Stabellini , Xen , Sedat Dilek , Yinghai Lu , Marcelo Tosatti , Ingo Molnar , Rik van Riel , Konrad Rzeszutek Wilk , LKML , Suzuki Poulose , Peter Zijlstra To: Srivatsa Vaddagiri Return-path: In-Reply-To: <20111024122734.GA10634@linux.vnet.ibm.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: kvm.vger.kernel.org On 10/24/2011 02:27 PM, Srivatsa Vaddagiri wrote: > Good point. Assuming yield_on_hlt=1, that would allow the vcpu to be put > to sleep and let other vcpus make progress. > > I guess with that change, we can also dropthe need for other hypercall > introduced in this patch (kvm_pv_kick_cpu_op()). Essentially a vcpu sleeping > because of HLT instruction can be woken up by a IPI issued by vcpu releasing a > lock. Not if interrupts are disabled. My original plan was to use NMIs for wakeups, but it turns out NMIs can be coalesced under certain rare circumstances; this requires workarounds by the generic NMI code that make NMIs too slow. -- I have a truly marvellous patch that fixes the bug which this signature is too narrow to contain.