From: Avi Kivity Subject: Re: [PATCH-RFC 2/2] eventfd: EFD_STATE flag Date: Tue, 04 Aug 2009 12:25:49 +0300 Message-ID: <4A77FE9D.3020505@redhat.com> References: <20090728175538.GC21549@redhat.com> <4A76FDB2.7080706@redhat.com> <20090803151426.GA3630@redhat.com> <4A770260.5000507@redhat.com> <20090803165708.GB3630@redhat.com> <4A77F6EF.8010002@redhat.com> <20090804085406.GA3311@redhat.com> <4A77FCB8.1000205@redhat.com> <20090804091755.GD4764@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: "Michael S. Tsirkin" , davidel@xmailserver.org, kvm@vger.kernel.org, linux-kernel@vger.kernel.org To: Gleb Natapov Return-path: Received: from mx2.redhat.com ([66.187.237.31]:38845 "EHLO mx2.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932527AbZHDJU2 (ORCPT ); Tue, 4 Aug 2009 05:20:28 -0400 In-Reply-To: <20090804091755.GD4764@redhat.com> Sender: kvm-owner@vger.kernel.org List-ID: On 08/04/2009 12:17 PM, Gleb Natapov wrote: >> If a different read comes after the write but after our read, it will >> have transferred the value, resulting in the same situation. >> >> I think reads should never block with a state based mechanism. >> >> > Reader may want to poll for the status change. > Without epoll(), it's inherently racy since reads from other processes can clear the status. The "last read value" needs to be maintained for each reader, which is not possible with read(). -- error compiling committee.c: too many arguments to function