Messages in this thread | | | Date | Thu, 29 Mar 2012 11:53:24 -0400 | From | Jason Baron <> | Subject | Re: [PATCH Resend] epoll: add EPOLLEXCLUSIVE support |
| |
On Thu, Mar 29, 2012 at 05:05:41PM +0200, Hagen Paul Pfeifer wrote: > * Jason Baron | 2012-03-29 10:16:53 [-0400]: > > >Right, for level triggered events, they all wait up. However, if you use > >edge triggered, ie add 'EPOLLET', then the event gets 'consumed' by the > >first thread that wakes up, and the subseqent waiters wouldn't get woken > >up. IE you'll get one wakeup. > > I addressed level triggered, right - it match the model. But I don't wanted to > wake up every every thread anyway. I don't want to abandon level triggered > functioning. > > Any objective against this flag? >
I was trying to better understand the use-case, since at least for the test case you posted, 'EPOLLET', already does what you want.
Also, the 'EPOLLEXCLUSIVE' flag in your patch addresses multiple threads blocking on *different* epoll fds. However, if multiple threads are blocked on a single epoll fd, they will all be woken even if 'EPOLLEXCLUSIVE' is set. Shouldn't 'EPOLLEXCLUSIVE' affect that case too?
Thanks,
-Jason
| |