diff options
| author | Gleb Smirnoff <glebius@FreeBSD.org> | 2025-10-07 21:02:29 +0000 |
|---|---|---|
| committer | Gleb Smirnoff <glebius@FreeBSD.org> | 2025-10-07 21:02:29 +0000 |
| commit | d9c94e5eefc0d1ed772cc3af15d92f1960ba73a6 (patch) | |
| tree | 834677320ff898783a5c8abdfafa3fdce9248336 | |
| parent | d801cc2d8542854a5dee9bfb25a15af6fa1dafad (diff) | |
tests/netinet: fix so_reuseport_lb_test flakyness
Stop the threads before exiting test body. Otherwise there is a chance
threads would use the softc that is stored on the main thread stack after
it is destroyed and the test would fail. Stop the threads in the reverse
order, so that listener is stopped after all connectors are stopped.
Tested by: olivier
| -rw-r--r-- | tests/sys/netinet/so_reuseport_lb_test.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/tests/sys/netinet/so_reuseport_lb_test.c b/tests/sys/netinet/so_reuseport_lb_test.c index fa9d6e425884..0479bd070ca6 100644 --- a/tests/sys/netinet/so_reuseport_lb_test.c +++ b/tests/sys/netinet/so_reuseport_lb_test.c @@ -375,6 +375,11 @@ ATF_TC_BODY(concurrent_add, tc) usleep(20000); } + + for (size_t j = nitems(threads); j > 0; j--) { + ATF_REQUIRE(pthread_cancel(threads[j - 1]) == 0); + ATF_REQUIRE(pthread_join(threads[j - 1], NULL) == 0); + } } /* |
