diff --git a/module/sock/posix/posix.c b/module/sock/posix/posix.c index a23751357..444d5df42 100644 --- a/module/sock/posix/posix.c +++ b/module/sock/posix/posix.c @@ -958,10 +958,7 @@ posix_sock_read(struct spdk_posix_sock *sock) #endif sock->pipe_has_data = true; - if (bytes_recvd < bytes_avail) { - /* We drained the kernel socket entirely. */ - sock->socket_has_data = false; - } + sock->socket_has_data = false; return bytes_recvd; } @@ -1454,6 +1451,7 @@ posix_sock_group_impl_poll(struct spdk_sock_group_impl *_group, int max_events, if (!psock->socket_has_data && !psock->pipe_has_data) { TAILQ_INSERT_TAIL(&group->socks_with_data, psock, link); } + psock->socket_has_data = true; }