]> Savannah Git Hosting - gnulib.git/commitdiff
test-pselect, test-select: use different ports
authorPaul Eggert <eggert@cs.ucla.edu>
Sun, 19 Mar 2023 23:06:34 +0000 (16:06 -0700)
committerBruno Haible <bruno@clisp.org>
Wed, 22 Mar 2023 21:52:18 +0000 (22:52 +0100)
I have observed rare and hard-to-reproduce problems with the GNU
grep release candidate with ‘make -j5 check’ on Fedora 37 x86-64.
One possibility is that test-pselect and test-select interfere
with each other somehow when run simultaneously, as they use the
same port.  Work around this possibility by using different ports
from each other, and from test-poll (which also uses 12345).
Of course it’d be better if all these tests used system-assigned
ports, but I assume that’d take more work.
* tests/test-pselect.c, tests/test-select.c (TEST_PORT): New macro.
* tests/test-select.h (TEST_PORT): Remove.

ChangeLog
tests/test-pselect.c
tests/test-select.c
tests/test-select.h

index 3358b5268dfd6a1f8f15a1b55a188eb2e6eed4fe..3eeafa854d13d31f0688a9e477958c11c0404495 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+2023-03-19  Paul Eggert  <eggert@cs.ucla.edu>
+
+       test-pselect, test-select: use different ports
+       I have observed rare and hard-to-reproduce problems with the GNU
+       grep release candidate with ‘make -j5 check’ on Fedora 37 x86-64.
+       One possibility is that test-pselect and test-select interfere
+       with each other somehow when run simultaneously, as they use the
+       same port.  Work around this possibility by using different ports
+       from each other, and from test-poll (which also uses 12345).
+       Of course it’d be better if all these tests used system-assigned
+       ports, but I assume that’d take more work.
+       * tests/test-pselect.c, tests/test-select.c (TEST_PORT): New macro.
+       * tests/test-select.h (TEST_PORT): Remove.
+
 2023-03-17  Bruno Haible  <bruno@clisp.org>
 
        vasnprintf: Fix potential failure on OpenBSD.
index 898578bebda1cd517c2ef2dcf7a076521dd93be6..a383f1d1b271f2f6d20f5927d6d3a931e8eefb8f 100644 (file)
@@ -1,5 +1,5 @@
 /* Test of pselect() substitute.
-   Copyright (C) 2011-2022 Free Software Foundation, Inc.
+   Copyright (C) 2011-2023 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -24,6 +24,7 @@ SIGNATURE_CHECK (pselect, int,
                  (int, fd_set *restrict, fd_set *restrict, fd_set *restrict,
                   struct timespec const *restrict, const sigset_t *restrict));
 
+#define TEST_PORT 12347
 #include "test-select.h"
 
 static int
index 7cca5517a2c20cb1e5502bd2e1f4be51a4bdbff0..b460060351c43d4a509a11c771e6c292e0db7011 100644 (file)
@@ -1,5 +1,5 @@
 /* Test of select() substitute.
-   Copyright (C) 2008-2022 Free Software Foundation, Inc.
+   Copyright (C) 2008-2023 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -25,6 +25,7 @@
 SIGNATURE_CHECK (select, int, (int, fd_set *, fd_set *, fd_set *,
                                struct timeval *));
 
+#define TEST_PORT 12346
 #include "test-select.h"
 
 int
index 5c6784169d9b12432c0a7b9e9ce6ab2ae33b8dd0..83fb655d84c0aceb0d53702efd4ce714731e169c 100644 (file)
@@ -1,5 +1,5 @@
 /* Test of select() substitute.
-   Copyright (C) 2008-2022 Free Software Foundation, Inc.
+   Copyright (C) 2008-2023 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -38,8 +38,6 @@
 # include <sys/wait.h>
 #endif
 
-#define TEST_PORT       12345
-
 
 typedef int (*select_fn) (int, fd_set *, fd_set *, fd_set *, struct timeval *);