summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorKlim Kireev2018-02-01 14:48:31 +0100
committerPaolo Bonzini2018-02-07 14:09:25 +0100
commit8f6d701044bc87197aac8aa2a627d70ce8471726 (patch)
treeb1e8452180db19a276af469a5dc9a37fe2428069 /tests
parenttests: use memfd in vhost-user-test (diff)
downloadqemu-8f6d701044bc87197aac8aa2a627d70ce8471726.tar.gz
qemu-8f6d701044bc87197aac8aa2a627d70ce8471726.tar.xz
qemu-8f6d701044bc87197aac8aa2a627d70ce8471726.zip
tests/test-filter-redirector: move close()
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 <klim.kireev@virtuozzo.com> Message-Id: <20180201134831.17709-1-klim.kireev@virtuozzo.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/test-filter-redirector.c2
1 files changed, 1 insertions, 1 deletions
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);