bpf, sockmap: fix cork timeout for select due to epipe
authorDaniel Borkmann <daniel@iogearbox.net>
Wed, 8 Aug 2018 17:23:15 +0000 (19:23 +0200)
committerAlexei Starovoitov <ast@kernel.org>
Wed, 8 Aug 2018 19:06:17 +0000 (12:06 -0700)
I ran into the same issue as a009f1f396d0 ("selftests/bpf:
test_sockmap, timing improvements") where I had a broken
pipe error on the socket due to remote end timing out on
select and then shutting down it's sockets while the other
side was still sending. We may need to do a bigger rework
in general on the test_sockmap.c, but for now increase it
to a more suitable timeout.

Fixes: a18fda1a62c3 ("bpf: reduce runtime of test_sockmap tests")
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: John Fastabend <john.fastabend@gmail.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/testing/selftests/bpf/test_sockmap.c

index 9e78df207919366fbdd048f7645568ac701ad5f5..0c7d9e556b47d0a8129586a634a423e4ad1af067 100644 (file)
@@ -354,7 +354,7 @@ static int msg_loop(int fd, int iov_count, int iov_length, int cnt,
                while (s->bytes_recvd < total_bytes) {
                        if (txmsg_cork) {
                                timeout.tv_sec = 0;
-                               timeout.tv_usec = 1000;
+                               timeout.tv_usec = 300000;
                        } else {
                                timeout.tv_sec = 1;
                                timeout.tv_usec = 0;