[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4F7E1D23.1080507@mit.edu>
Date: Thu, 05 Apr 2012 15:30:59 -0700
From: Andy Lutomirski <luto@....EDU>
To: Hagen Paul Pfeifer <hagen@...u.net>
CC: Jason Baron <jbaron@...hat.com>,
richard -rw- weinberger <richard.weinberger@...il.com>,
torvalds@...ux-foundation.org, LKML <linux-kernel@...r.kernel.org>,
Al Viro <viro@...iv.linux.org.uk>,
Lucas De Marchi <lucas.demarchi@...fusion.mobi>,
Andrew Morton <akpm@...ux-foundation.org>,
linux-fsdevel@...r.kernel.org, eric.dumazet@...il.com
Subject: Re: [PATCH Resend] epoll: add EPOLLEXCLUSIVE support
On 03/29/2012 08:05 AM, 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.
I think that what you want is a mode in which, once epoll_wait returns,
the bits it returns get cleared from the event mask. Am I right?
(To get this right, you'd need another flag that disables the automatic
addition of POLLERR and POLLHUP.)
If you do that and add an extra syscall that simultaneously does a bunch
of epoll_ctls, a timerfd_settime, and an epoll_wait, I'll be extra happy.
--Andy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists