mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2024-11-25 05:03:05 +00:00
d60bf43903
The async methods of the socket VVU handler were calling the non-async accept() on a dedicated thread so the async method does not get blocked awaiting for a connection. This socket-specific behavior forces us to have dedicated code for the socket and VVU handlers. Fix this by adding a poll_descriptor() method to vmm_vhost's Listener trait that returns a descriptor that callers can poll on if a call to accept() can block. This way we can wait for the connection asynchronously and avoid using a thread for that. It also opens the way towards factorizing the socket and VVU specific code. BUG=b:229554679 TEST=vhost-user console device works. Change-Id: I3fbc96d3904f777c6165b04564f577c553ce55d2 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/crosvm/+/3592632 Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org> Tested-by: kokoro <noreply+kokoro@google.com> Commit-Queue: Alexandre Courbot <acourbot@chromium.org> |
||
---|---|---|
.. | ||
libslirp-rs | ||
minigbm@ef852e007c | ||
minijail@77c59db8ff | ||
virglrenderer@4770f706db | ||
vmm_vhost |