warning: epoll_create is not implemented and will always fail
Igor Sysoev
is at rambler-co.ru
Sun Sep 24 15:29:34 MSD 2006
On Sun, 24 Sep 2006, Alexey Mahotkin wrote:
> при сборке nginx на нашей маниакально сконфигурированной (вне моего
> контроля) Slackware при линковке бинарника имеем:
>
> objs/src/event/ngx_event.o(.text+0xdbc): In function `ngx_event_init_conf':
> src/event/ngx_event.c:1140: warning: warning: epoll_create is not
> implemented and will always fail
> objs/src/event/modules/ngx_epoll_module.o(.text+0x1cc): In function
> `ngx_epoll_add_event':
> src/event/modules/ngx_epoll_module.c:250: warning: warning: epoll_ctl
> is not implemented and will always fail
> objs/src/event/modules/ngx_epoll_module.o(.text+0x416): In function
> `ngx_epoll_process_events':
> src/event/modules/ngx_epoll_module.c:402: warning: warning: epoll_wait
> is not implemented and will always fail
Это круто. Учитывая, что nginx при configure выполняет epoll_create()
и разрешает его использование только при успешном выполнении.
> При этом nginx взлетает, говорит в логе, что использует epoll и даже
> вроде бы не очень медленно работает. Но недавно у нас начали
> дропаться SYN'ы, и нам советуют попробовать ускорить процесс приёма
> новых соединений.
Возможно, в ядре нужно увеличить listen backlog.
> Тестовая аппликуха от epoll, как сказал мне хозяин машины, работает
> нормально.
>
> Может ли быть так, что nginx действительно получает от epoll_create
> код ошибки и тихо даунгрейдится до какого-нибудь select(), прости
> господи?
Нет, в этом случае worker просто выходит с кодом 2, и master не запускает
новые. Временное переключение на poll происходит только при переполнении
rtsig.
Игорь Сысоев
http://sysoev.ru
More information about the nginx-ru
mailing list