Re: [PATCH] /dev/epoll update ...

Christopher K. St. John (cks@distributopia.com)
Wed, 19 Sep 2001 02:04:07 -0500


Dan Kegel wrote:
>
> I'm getting ready to stress-test /dev/epoll finally.
> In porting my Poller_devpoll.{cc,h} to support /dev/epoll, I noticed
> the following issues:
>

Another issue to throw into the mix:

The Banga, Mogul and Druschel[1] paper (which I understand
was the inspiration for the Solaris /dev/poll which was the
inspiration for /dev/epoll?) talks about having the poll
return the current state of new descriptors. As far as I can
tell, /dev/epoll only gives you events on state changes. So,
for example, if you accept() a new socket and add it to the
interest list, you (probably) won't get a POLLIN. That's
not fatal, but it's awkward.

The BMD paper suggests making the behavior optional, but
I didn't see anything about it in the Solaris /dev/poll
manpage (and I don't have a copy of Solaris to try it out
on).

My vote would be to always report the initial state, but
that would make the driver a little more complicated.

What are the preferred semantics?

[1] http://citeseer.nj.nec.com/banga99scalable.html

-- 
Christopher St. John cks@distributopia.com
DistribuTopia http://www.distributopia.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/