mirror of
https://chromium.googlesource.com/crosvm/crosvm
synced 2024-11-25 05:03:05 +00:00
24630fe1e4
Current implementation of vhost-user backend devices cannot directly send vhost-user messages from the backend to the frontend since the established connection is stored directly to `VhostShmemMapper`. This limits the messages that could be sent to memory share-related messages. To overcome this limitation, introduce struct `VhostBackendReqConnection` which exposes the required backend to frontend requests and keeps track of the underlying transport (struct `Slave`), and refactor `Slave` out from current VhostShmemMapper.The state of the connection is managed using enum `VhostBackendReqConnectionState`. This patch also moves the timing of when `BackendReqHandler` is created in the frontend to when `VhostUserProtocolFeatures::SLAVE_REQ` is negotiated when creating VhostUserHandler. BUG=b:191845881 TEST=run ./tools/run_tests Change-Id: I90235a527d58067f73a509907b4cefc09516f562 Reviewed-on: https://chromium-review.googlesource.com/c/crosvm/crosvm/+/3856036 Reviewed-by: David Stevens <stevensd@chromium.org> Reviewed-by: Keiichi Watanabe <keiichiw@chromium.org> |
||
---|---|---|
.. | ||
depot_tools@268d645853 | ||
libslirp-rs | ||
minigbm@ef852e007c | ||
minijail@77c59db8ff | ||
virglrenderer@4770f706db | ||
vmm_vhost |