glibc 2.9

Jamal Hadi Salim jhs at
Fri Jun 22 14:51:51 CEST 2012

On Fri, 2012-06-22 at 13:09 +0200, Marc Lehmann wrote:

> The kernel should return einval if it doesn't understand that flag
> (but this is about libc, not kernel version, right?). Even if the
> kernel silently ignores the flag, libev will just set it again as with
> epoll_create.

It does, but in the new kernels (which is what i use) that call is
essentially being phased out. i.e. if i happen to compile with
EPOLL_CLOEXEC I get epoll_create1(EPOLL_CLOEXEC); otherwise i get 
epoll_create(255) which translates to epoll_create1(0) when glibc
call makes it to the kernel.
(which of course can be mitigated with fork/close/exec with O_CLOEXEC)

> Well, you can break your stuff as you want, just make sure you don't blame
> libev later when it breaks :)

I use libev because it does the job well and I observe you do an
excellent job worrying about all the intricacies and crazy changes in
the libcs and the kernels;-> If i start maintaining personal OCD forks
I am defeating the purpose. So it seems to me my best way forward is to
just say "use glibc 2.9 and above".


More information about the libev mailing list