Hi, Am Mittwoch, den 09.03.2011, 10:22 +0100 schrieb Julien Cristau: > epoll_create1 was added in 2.6.27, afaict. If that's what haskell is > using, then it's not unexpected to have it fail on 2.6.26.
good shot, thanks! From ./libraries/base/System/Event/EPoll.hsc: (this line does not start with ">") epollCreate :: IO EPollFd epollCreate = do fd <- throwErrnoIfMinus1 "epollCreate" $ #if defined(HAVE_EPOLL_CREATE1) c_epoll_create1 (#const EPOLL_CLOEXEC) #else c_epoll_create 256 -- argument is ignored setCloseOnExec fd #endif let !epollFd' = EPollFd fd return epollFd' #if defined(HAVE_EPOLL_CREATE1) foreign import ccall unsafe "sys/epoll.h epoll_create1" c_epoll_create1 :: CInt -> IO CInt #else foreign import ccall unsafe "sys/epoll.h epoll_create" c_epoll_create :: CInt -> IO CInt #endif and in libraries/base/configure.ac: AC_CHECK_FUNCS([epoll_create1 epoll_ctl eventfd kevent kevent64 kqueue poll]) So what is the conclusion? Do we need to disable the use of epoll_create1 completely? Or is it actually so that the libc should map uses of epoll_create1 to epoll_create? Or do we need to introduce run-time checks as to whether epoll_create1 is available? Thanks, Joachim -- Joachim "nomeata" Breitner Debian Developer nome...@debian.org | ICQ# 74513189 | GPG-Keyid: 4743206C JID: nome...@joachim-breitner.de | http://people.debian.org/~nomeata
signature.asc
Description: This is a digitally signed message part