mirror of https://github.com/grpc/grpc.git
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.pull/4018/head
parent
89ea0c7815
commit
66197ca25d
2 changed files with 5 additions and 1 deletions
Loading…
Reference in new issue