[oi-dev] "Fixed Enlightenment" or "Beware of epoll"

Aurélien Larcher aurelien.larcher at gmail.com
Wed Apr 12 05:32:33 UTC 2017


Hi,
yesterday I figured out why EFL stopped working suddenly several (too many)
months ago: <sys/epoll.h> was added and one source started using silently
epoll in the main loop.

But epoll in illumos does not implement the same behaviour as in Linux:
https://us-east.manta.joyent.com/smartosman/public/man5/epoll.5.html
and in this particular case EFL relies on a peculiarity of Linux epoll: on
illumos this produces a deadlock.

The "fix" was to avoid using automatically epoll if <sys/epoll.h> is
present on the system.

This led me to think about freezes in Xorg 1.19 during testing: they are
also caused by epoll and after trying to confirm it, I noticed that
Jonathan Perkin committed to pkgsrc to work around the same issue.

It is likely that other software (libevent?) will exhibit the same feature,
so beware camembert!

Kind regards,

Aurelien



-- 
---
Praise the Caffeine embeddings
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openindiana.org/pipermail/oi-dev/attachments/20170412/8a130cb9/attachment-0004.html>


More information about the oi-dev mailing list