We recently found that some tests were failing [1]. The problem was that we were not waiting for all the bytes correctly, so we had a partial read. I had initially suggested using MSG_WAITALL, but this could have timeout problems. Since we already had send_byte() and recv_byte() that handled the timeout, but also the expected return value, I moved that code to two new functions that we can now use to send/receive generic buffers. The last commit is just an improvement to a test I found difficult to understand while using the new functions. @Arseniy a review and some testing are really appreciated :-) [1] https://lore.kernel.org/netdev/63xflnwiohdfo6m3vnrrxgv2ulplencpwug5qqacugqh7xxpu3@tsczkuqgwurb/ Stefano Garzarella (5): vsock/test: add recv_buf() utility function vsock/test: use recv_buf() in vsock_test.c vsock/test: add send_buf() utility function vsock/test: use send_buf() in vsock_test.c vsock/test: track bytes in MSG_PEEK test for SOCK_SEQPACKET tools/testing/vsock/util.h | 3 + tools/testing/vsock/util.c | 124 ++++++++++++-------- tools/testing/vsock/vsock_test.c | 187 ++++++------------------------- 3 files changed, 117 insertions(+), 197 deletions(-) -- 2.41.0 _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization