This reverts commit
12082663561aa2189d243328060c399f2fd95860.
It randomly breaks SSL. What happens is that if the SSL response is
read at once by the SSL stack and is partially delivered to the buffer,
then there's no way to read the next parts because we wait for some
polling first.
So we'll fix this after the polling rework.
*/
if (i & (FD_EV_ACTIVE << dir))
return; /* already in desired state */
-
- /* If we're touching an FD which is still being polled, and was
- * recently disabled, we re-enable polling in order not to perform
- * a syscall dance and to avoid a missed speculative event.
- */
- if ((((unsigned int)fdtab[fd].spec_e) >> 4) & (FD_EV_POLLED << dir))
- fdtab[fd].spec_e ^= i ^ (FD_EV_POLLED << dir);
- else
- fdtab[fd].spec_e |= (FD_EV_ACTIVE << dir);
+ fdtab[fd].spec_e |= (FD_EV_ACTIVE << dir);
updt_fd(fd); /* need an update entry to change the state */
}