michael@0: --- michael@0: ipc/chromium/src/third_party/libevent/epoll_sub.c | 13 +++++++++++++ michael@0: 1 file changed, 13 insertions(+) michael@0: michael@0: --- mozilla-central.orig/ipc/chromium/src/third_party/libevent/epoll_sub.c michael@0: +++ mozilla-central/ipc/chromium/src/third_party/libevent/epoll_sub.c michael@0: @@ -29,15 +29,24 @@ michael@0: #include michael@0: #include michael@0: #include michael@0: #include michael@0: #include michael@0: +#include michael@0: michael@0: int michael@0: epoll_create(int size) michael@0: { michael@0: +#if !defined(__NR_epoll_create) && defined(__NR_epoll_create1) michael@0: + if (size <= 0) { michael@0: + errno = EINVAL; michael@0: + return -1; michael@0: + } michael@0: + return (syscall(__NR_epoll_create1, 0)); michael@0: +#else michael@0: return (syscall(__NR_epoll_create, size)); michael@0: +#endif michael@0: } michael@0: michael@0: int michael@0: epoll_ctl(int epfd, int op, int fd, struct epoll_event *event) michael@0: { michael@0: @@ -46,7 +55,11 @@ epoll_ctl(int epfd, int op, int fd, stru michael@0: } michael@0: michael@0: int michael@0: epoll_wait(int epfd, struct epoll_event *events, int maxevents, int timeout) michael@0: { michael@0: +#if !defined(__NR_epoll_wait) && defined(__NR_epoll_pwait) michael@0: + return (syscall(__NR_epoll_pwait, epfd, events, maxevents, timeout, NULL, 0)); michael@0: +#else michael@0: return (syscall(__NR_epoll_wait, epfd, events, maxevents, timeout)); michael@0: +#endif michael@0: }