Fix nap condition for pollset wakeup
If: - one thread issues a kick forcing pollset re-evaluation - concurrently with a second thread forcing a specific poller to be awoken And: - both threads kicks are processed as a single wakeup Then: - since we enqueue nothing to the exec_ctx in this situation, we responded to the wakeup by doing another poll until the timeout, ignoring urgent work up the stack Fix this by flagging that a specific worker was designated to be awoken (since this is a good signal that we really really need to wake up), and use that to still re-evaluate the poll set, but with an immediate deadline so that we fall out of the poll loop as soon as possible.
Loading
Please register or sign in to comment