]> git.ipfire.org Git - thirdparty/curl.git/commitdiff
lib1564: reduce number of mid-wait wakeup calls
authorDaniel Stenberg <daniel@haxx.se>
Sat, 7 Mar 2020 12:37:50 +0000 (13:37 +0100)
committerDaniel Stenberg <daniel@haxx.se>
Sat, 7 Mar 2020 22:27:58 +0000 (23:27 +0100)
This test does A LOT of *wakeup() calls and then calls curl_multi_poll()
twice. The first *poll() is then expected to return early and the second
not - as the first is supposed to drain the socketpair pipe.

It turns out however that when given "excessive" amounts of writes to
the pipe, some operating systems (the Solaris based are known) will
return EAGAIN before the pipe is drained, which in our test case causes
the second *poll() call to also abort early.

This change attempts to avoid the OS-specific behaviors in the test by
reducing the amount of wakeup calls from 1234567 to 10.

Reported-by: Andy Fiddaman
Fixes #5037
Closes #5058

tests/libtest/lib1564.c

index 225c8c6d7b206dad8d1c9980d7887d11984e17ac..13ac5b01e2129da8e363ba09ee682ee43d8bef44 100644 (file)
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -26,7 +26,7 @@
 #include "memdebug.h"
 
 #define TEST_HANG_TIMEOUT 60 * 1000
-#define WAKEUP_NUM 1234567
+#define WAKEUP_NUM 10
 
 int test(char *URL)
 {