On 01/02/2018 08:48, Klim Kireev wrote:
> Since we have separate handler on POLLHUP, which drops data
> after closing the connection we need to fix this test, because
> it sends data and instantly close the socket creating race condition.
> In some cases on other end of socket client closes it faster than
> reads data. To prevent it I suggest to close socket after recieving.
> 
> Signed-off-by: Klim Kireev <[email protected]>
> ---
>  tests/test-filter-redirector.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/tests/test-filter-redirector.c b/tests/test-filter-redirector.c
> index f2566144cf..fbaf19bbd8 100644
> --- a/tests/test-filter-redirector.c
> +++ b/tests/test-filter-redirector.c
> @@ -186,7 +186,6 @@ static void test_redirector_rx(void)
>  
>      ret = iov_send(send_sock, iov, 2, 0, sizeof(size) + sizeof(send_buf));
>      g_assert_cmpint(ret, ==, sizeof(send_buf) + sizeof(size));
> -    close(send_sock);
>  
>      ret = qemu_recv(backend_sock[0], &len, sizeof(len), 0);
>      g_assert_cmpint(ret, ==, sizeof(len));
> @@ -197,6 +196,7 @@ static void test_redirector_rx(void)
>      ret = qemu_recv(backend_sock[0], recv_buf, len, 0);
>      g_assert_cmpstr(recv_buf, ==, send_buf);
>  
> +    close(send_sock);
>      g_free(recv_buf);
>      unlink(sock_path0);
>      unlink(sock_path1);
> 

Queued, thanks.

Paolo

Reply via email to