From: Alan Coopersmith Date: Sun, 13 Oct 2024 19:24:09 +0000 (-0700) Subject: test: raise fd limit to maximum before running fdpass tests X-Git-Tag: dbus-1.15.12~8^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f851484bf5aa0ef40eca1c34a215be5346095b2f;p=thirdparty%2Fdbus.git test: raise fd limit to maximum before running fdpass tests Many of these tests require more than the default fd limit on some systems, so raise the limit, if we can, to give them a better chance of being able to run. Closes #176 Signed-off-by: Alan Coopersmith --- diff --git a/test/fdpass.c b/test/fdpass.c index cf344dae3..664fd1363 100644 --- a/test/fdpass.c +++ b/test/fdpass.c @@ -910,6 +910,16 @@ main (int argc, if (getrlimit (RLIMIT_NOFILE, &lim) < 0) g_error ("Failed to get RLIMIT_NOFILE limit: %s", g_strerror (errno)); + if ((lim.rlim_cur != RLIM_INFINITY) && (lim.rlim_cur < lim.rlim_max)) + { + /* Many test require large number of file descriptors, + * so max out what they can use */ + lim.rlim_cur = lim.rlim_max; + if (setrlimit (RLIMIT_NOFILE, &lim) < 0) + g_error ("Failed to set RLIMIT_NOFILE limit to %ld: %s", + (long) lim.rlim_cur, g_strerror (errno)); + } + if (lim.rlim_cur != RLIM_INFINITY && /* only run if we have a fairly generous margin of error * for stdout, stderr, duplicates, the D-Bus connection, etc. */