* increment i so nb_fd is the number of real FD.
*/
(*pollfd)[i].fd = ctx->consumer_poll_pipe[0];
- (*pollfd)[i].events = POLLIN;
+ (*pollfd)[i].events = POLLIN | POLLPRI;
return i;
}
perror("Poll error");
goto exit;
}
- if (consumer_sockpoll[0].revents & POLLIN) {
+ if (consumer_sockpoll[0].revents & (POLLIN | POLLPRI)) {
DBG("consumer_should_quit wake up");
goto exit;
}
* array. We want to prioritize array update over
* low-priority reads.
*/
- if (pollfd[nb_fd].revents & POLLIN) {
+ if (pollfd[nb_fd].revents & (POLLIN | POLLPRI)) {
DBG("consumer_poll_pipe wake up");
tmp2 = read(ctx->consumer_poll_pipe[0], &tmp, 1);
if (tmp2 < 0) {