On Thu, Mar 12, 2020 at 06:57 PM CET, Andrii Nakryiko wrote: > On Thu, Mar 12, 2020 at 10:11 AM Jakub Sitnicki <jakub@xxxxxxxxxxxxxx> wrote: >> >> Andrii Nakryiko reports that sockmap_listen test suite is frequently >> failing due to accept() calls erroring out with EAGAIN: >> >> ./test_progs:connect_accept_thread:733: accept: Resource temporarily unavailable >> connect_accept_thread:FAIL:733 >> >> This is because we are needlessly putting the listening TCP sockets in >> non-blocking mode. >> >> Fix it by using the default blocking mode in all tests in this suite. >> >> Fixes: 44d28be2b8d4 ("selftests/bpf: Tests for sockmap/sockhash holding listening sockets") >> Reported-by: Andrii Nakryiko <andrii.nakryiko@xxxxxxxxx> >> Signed-off-by: Jakub Sitnicki <jakub@xxxxxxxxxxxxxx> >> --- > > Thanks for looking into this. Can you please verify that test > successfully fails (not hangs) when, say, network is down (do `ip link > set lo down` before running test?). The reason I'm asking is that I > just fixed a problem in tcp_rtt selftest, in which accept() would > block forever, even if listening socket was closed. Right, good point. We don't want tests hanging. Let me rework it. [...]