From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCHv2 1/3] eventfd: allow atomic read and waitqueue remove Date: Thu, 21 Jan 2010 19:13:13 +0200 Message-ID: <4B588B29.2050100@redhat.com> References: <20100121162648.GA16458@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Cc: "Michael S. Tsirkin" , mtosatti@redhat.com, kvm@vger.kernel.org, Linux Kernel Mailing List To: Davide Libenzi Return-path: Received: from mx1.redhat.com ([209.132.183.28]:2072 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752631Ab0AURNR (ORCPT ); Thu, 21 Jan 2010 12:13:17 -0500 In-Reply-To: Sender: kvm-owner@vger.kernel.org List-ID: On 01/21/2010 06:58 PM, Davide Libenzi wrote: > On Thu, 21 Jan 2010, Michael S. Tsirkin wrote: > > >> This is a backport of commit: 03db343a6320f780937078433fa7d8da955e6fce >> modified in a way that introduces some code duplication on the one hand, >> but reduces the risk of regressing existing eventfd users on the other >> hand. >> >> KVM needs a wait to atomically remove themselves from the eventfd >> ->poll() wait queue head, in order to handle correctly their IRQfd >> deassign operation. >> >> This patch introduces such API, plus a way to read an eventfd from its >> context. >> >> Signed-off-by: Michael S. Tsirkin >> --- >> >> Avi, Davidel, how about only including the following part for -stable >> then? Reason is, I still would like to be able to use irqfd there, and >> getting spurious interrupts 100% of times unmask is done isn't a very >> good idea IMO ... >> > It's the same thing. Unless there are *real* problems in KVM due to the > spurious ints, I still think this is .33 material. > I agree. But I think we can solve this in another way in .32: we can clear the eventfd from irqfd->inject work, which is in process context. The new stuff is only needed for lockless clearing, no? -- Do not meddle in the internals of kernels, for they are subtle and quick to panic.