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

Re: [Xen-devel] [PATCH 02/20] libxl: support multiple libxl__ev_fds for the same fd



Ian Campbell writes ("Re: [Xen-devel] [PATCH 02/20] libxl: support multiple 
libxl__ev_fds for the same fd"):
> On Fri, 2012-04-13 at 19:39 +0100, Ian Jackson wrote:
> > We need a slightly more sophisticated data structure to allow this,
> > where we record the slot not just for each fd but also for each
> > (fd,eventbit) where eventbit is POLLIN, POLLPRI, POLLOUT.
> 
> Just to be sure I'm following: By multiple you mean you can have one
> libxl__ev_fds listening for e.g. POLLIN and another for POLLOUT but you
> specifically exclude the case where two libxl__ev_fds both want to
> listen for POLLIN? Similarly one listening for POLLIN|POLLPRI and the
> other for POLLOUT|POLLPRI (overlapping) is forbidden.

Yes, exactly.  As I say in the new doc comment:
+   *
+   * It is not permitted to listen for the same or overlapping events
+   * on the same fd using multiple different libxl__ev_fd's.

This restriction is actually stronger than that required by the code.
The code merely requires that for every distinct libxl__ev_fd
listening on the same fd, it has at least one of the three flags all
to itself.  So your second scenario would actually work.

Would it be worth documenting this precise restriction ?

> > +     * fd_rindices, and each elemebnt in the rindices is three indices
> 
>                                element

Fixed.

> So, other than the typoe:
> 
> Acked-by: Ian Campbell <ian.campbell@xxxxxxxxxx>

Thanks.

Ian.

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.