diff --git a/src/ev_poll.c b/src/ev_poll.c index f973d08bc..a84fa608f 100644 --- a/src/ev_poll.c +++ b/src/ev_poll.c @@ -188,7 +188,6 @@ static void _do_poll(struct poller *p, int exp, int wake) } if (!(fdtab[fd].thread_mask & tid_bit)) { - activity[tid].poll_skip_fd++; continue; } @@ -233,6 +232,11 @@ static void _do_poll(struct poller *p, int exp, int wake) continue; } + if (!(fdtab[fd].thread_mask & tid_bit)) { + activity[tid].poll_skip_fd++; + continue; + } + n = ((e & POLLIN) ? FD_EV_READY_R : 0) | ((e & POLLOUT) ? FD_EV_READY_W : 0) | ((e & POLLRDHUP) ? FD_EV_SHUT_R : 0) |