diff --git a/test/test-tcp-reuseport.c b/test/test-tcp-reuseport.c index f108b9bbe..db77ff222 100644 --- a/test/test-tcp-reuseport.c +++ b/test/test-tcp-reuseport.c @@ -178,6 +178,17 @@ TEST_IMPL(tcp_reuseport) { int r; int i; +#if defined(__QEMU__) + /* QEMU's user-mode emulator sometimes runs threads in sequence + * instead of in parallel and that throws off the test. + * See https://github.com/libuv/libuv/issues/4777. + */ + RETURN_SKIP("Unreliable under QEMU"); +#endif /* defined(__QEMU__) */ + + if (uv_available_parallelism() < 2) + RETURN_SKIP("Unreliable without thread parallelism"); + r = uv_mutex_init(&mutex); ASSERT_OK(r);