mirror of
https://github.com/cloud-hypervisor/cloud-hypervisor.git
synced 2025-02-21 19:02:30 +00:00
This patch has been cherry-picked from the Firecracker tree. The reference commit is 660d18cf7fee5b38c3b1b17a5da6544b9025909d. Apparently, epoll_wait sometimes yields false EPOLLIN events (i.e. events follwing which read() would fail with EWOULDBLOCK). This would cause the vsock connection state machine to terminate connections, since an error was detected on the underlying Unix socket. This commit changes the vsock connection state machine code to handle such erroneous EPOLLIN events by absorbing EWOULDBLOCK read() errors. Signed-off-by: Dan Horobeanu <dhr@amazon.com> Signed-off-by: Gabriel Ionescu <gbi@amazon.com> Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>