glibc 2.9

jamal hadi at
Mon Jun 25 15:12:02 CEST 2012

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

> Glibc might emulate epoll_create with epoll_create1, but that doesn't mean
> that the kernel phases it out, 

Not sure about glibc emulating or what it means when you pass 255 to
epoll_create being emulated, but here's what the kernel does when you
call syscall epoll_create:

SYSCALL_DEFINE1(epoll_create, int, size)
        if (size <= 0)
                return -EINVAL;

        return sys_epoll_create1(0);

As you can see it translates to epoll_create1(0)

> The best way for you would be to use glibc 2.8 or newer - that will just
> run on all newre libcs, until you hit a libc that has been deliberately
> compiled without backwards compatibility. That would solve all technical
> problems you have, unless you really have a race between ev_loop_new and
> another thread that forks.

Sigh, yes-  I think i need to deal with forks explicitly. And for now
compile with glibc 2.8.
Thanks for your help.


More information about the libev mailing list