mirror of https://github.com/openresty/openresty
fixed a serious regression for linux aio in nginx-1.0.10-epoll_check_stale_wev.patch, thanks Maxim Dounin! released ngx_openresty 1.0.10.21.
parent
99f0e9f829
commit
f4745c3d28
@ -1,21 +1,20 @@
|
||||
--- nginx-1.0.10/src/event/modules/ngx_epoll_module.c 2011-09-30 22:12:53.000000000 +0800
|
||||
+++ nginx-1.0.10-patched/src/event/modules/ngx_epoll_module.c 2011-11-07 18:07:04.764111952 +0800
|
||||
@@ -681,6 +681,18 @@
|
||||
|
||||
+++ nginx-1.0.10-patched/src/event/modules/ngx_epoll_module.c 2011-11-30 11:08:46.775817019 +0800
|
||||
@@ -682,6 +682,17 @@
|
||||
wev = c->write;
|
||||
|
||||
+ if (c->fd == -1 || wev->instance != instance) {
|
||||
+
|
||||
+ /*
|
||||
+ * the stale event from a file descriptor
|
||||
+ * that was just closed in this iteration
|
||||
+ */
|
||||
if ((revents & EPOLLOUT) && wev->active) {
|
||||
+ if (c->fd == -1 || wev->instance != instance) {
|
||||
+
|
||||
+ ngx_log_debug1(NGX_LOG_DEBUG_EVENT, cycle->log, 0,
|
||||
+ "epoll: stale event %p", c);
|
||||
+ continue;
|
||||
+ }
|
||||
+ /*
|
||||
+ * the stale event from a file descriptor
|
||||
+ * that was just closed in this iteration
|
||||
+ */
|
||||
+
|
||||
if ((revents & EPOLLOUT) && wev->active) {
|
||||
+ ngx_log_debug1(NGX_LOG_DEBUG_EVENT, cycle->log, 0,
|
||||
+ "epoll: stale event %p", c);
|
||||
+ continue;
|
||||
+ }
|
||||
|
||||
if (flags & NGX_POST_THREAD_EVENTS) {
|
||||
wev->posted_ready = 1;
|
||||
|
Loading…
Reference in New Issue