qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [Qemu-block] [PATCH v4 3/3] aio: Introduce aio-epoll.c


From: Fam Zheng
Subject: Re: [Qemu-devel] [Qemu-block] [PATCH v4 3/3] aio: Introduce aio-epoll.c
Date: Mon, 2 Nov 2015 21:33:19 +0800
User-agent: Mutt/1.5.21 (2010-09-15)

On Mon, 11/02 13:19, Stefan Hajnoczi wrote:
> On Mon, Nov 02, 2015 at 10:32:54AM +0800, Fam Zheng wrote:
> > On Fri, 10/30 10:07, Stefan Hajnoczi wrote:
> > > On Fri, Oct 30, 2015 at 12:06:29PM +0800, Fam Zheng wrote:
> > > > To comply with aio_{disable,enable}_external, we always use ppoll when
> > > > aio_external_disabled() is true.
> > > 
> > > All file descriptors are added to the epoll fd.  Does that mean epoll
> > > will report the same fds again after we come out of
> > > ppoll()/aio_external_disabled()?
> > > 
> > > The two constraints to think about:
> > > 1. Ideally there should be no duplicated events.
> > > 2. There absolutely cannot be any missed events.
> > > 
> > 
> > I'm not sure I understood your question. The file descriptors added to 
> > epollfd
> > are always in sync with ppoll, so there is no difference between calling
> > epoll_wait and ppoll. When we come out of aio_external_disabled(), the same 
> > set
> > of fds will be polled, but the events got by ppoll should already be 
> > handled.
> > 
> > What am I missing?
> 
> I'm asking about duplicated events.  The epoll fd monitors the same set
> of fds as ppoll().  When we come out of aio_external_disabled() will
> epoll fd see the old events that have already been handled by ppoll()?

No, we don't get duplicated events. epoll fd will only see unhandled (new)
events.

Fam



reply via email to

[Prev in Thread] Current Thread [Next in Thread]