From 3f73038e259e0a31b1918568bec753275fdee5ae Mon Sep 17 00:00:00 2001 From: Ziye Yang Date: Wed, 25 Mar 2020 19:40:38 +0800 Subject: [PATCH] posix: Fix the pendinging_recv flag setting. The statement in line 1199 is may not be correct: Actually, it should be following two cases to pendinging_recv into false; 1 posck->recv_pipe == NULL 2 psock->recv_pipe != NULL & avalable_bytes == 0; So this patch can fix this issue. Signed-off-by: Ziye Yang Change-Id: Ie612f781b0848e1f0ab1b48dc8c45e39862b772a Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/1446 Tested-by: SPDK CI Jenkins Reviewed-by: Ben Walker Reviewed-by: Aleksey Marchuk Reviewed-by: Shuhei Matsumoto --- module/sock/posix/posix.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/sock/posix/posix.c b/module/sock/posix/posix.c index 3d78769ea..cce20fbca 100644 --- a/module/sock/posix/posix.c +++ b/module/sock/posix/posix.c @@ -1196,7 +1196,7 @@ spdk_posix_sock_group_impl_poll(struct spdk_sock_group_impl *_group, int max_eve TAILQ_REMOVE(&group->pending_recv, psock, link); - if (psock->recv_pipe != NULL || spdk_pipe_reader_bytes_available(psock->recv_pipe) == 0) { + if (psock->recv_pipe == NULL || spdk_pipe_reader_bytes_available(psock->recv_pipe) == 0) { psock->pending_recv = false; } else { TAILQ_INSERT_TAIL(&group->pending_recv, psock, link);