1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-08-10 05:03:06 +03:00

Add --with-timeoutfactor=NUM to specify TIMEOUTFACTOR

On Ice Lake and Tiger Lake laptops, some test programs timeout when there
are 3 "make check -j8" runs in parallel.  Add --with-timeoutfactor=NUM to
specify an integer to scale the timeout of test programs, which can be
overriden by TIMEOUTFACTOR environment variable.

Reviewed-by: Florian Weimer <fweimer@redhat.com>
This commit is contained in:
H.J. Lu
2021-12-04 11:25:53 -08:00
parent 4df1fa6ddc
commit bada2e312a
6 changed files with 37 additions and 1 deletions

View File

@@ -106,6 +106,11 @@ if 'CFLAGS' is specified it must enable optimization. For example:
particular case and potentially change debugging information and particular case and potentially change debugging information and
metadata only). metadata only).
'--with-timeoutfactor=NUM'
Specify an integer NUM to scale the timeout of test programs. This
factor can be changed at run time using 'TIMEOUTFACTOR' environment
variable.
'--disable-shared' '--disable-shared'
Don't build shared libraries even if it is possible. Not all Don't build shared libraries even if it is possible. Not all
systems support shared libraries; you need ELF support and systems support shared libraries; you need ELF support and

View File

@@ -196,6 +196,9 @@
/* Define to 1 if libpthread actually resides in libc. */ /* Define to 1 if libpthread actually resides in libc. */
#define PTHREAD_IN_LIBC 0 #define PTHREAD_IN_LIBC 0
/* An integer used to scale the timeout of test programs. */
#define TIMEOUTFACTOR 1
/* /*
*/ */

16
configure vendored
View File

@@ -764,6 +764,7 @@ with_selinux
with_headers with_headers
with_default_link with_default_link
with_nonshared_cflags with_nonshared_cflags
with_timeoutfactor
enable_sanity_checks enable_sanity_checks
enable_shared enable_shared
enable_profile enable_profile
@@ -1482,6 +1483,8 @@ Optional Packages:
--with-default-link do not use explicit linker scripts --with-default-link do not use explicit linker scripts
--with-nonshared-cflags=CFLAGS --with-nonshared-cflags=CFLAGS
build nonshared libraries with additional CFLAGS build nonshared libraries with additional CFLAGS
--with-timeoutfactor=NUM
specify an integer to scale the timeout
--with-cpu=CPU select code for CPU variant --with-cpu=CPU select code for CPU variant
Some influential environment variables: Some influential environment variables:
@@ -3386,6 +3389,19 @@ fi
# Check whether --with-timeoutfactor was given.
if test "${with_timeoutfactor+set}" = set; then :
withval=$with_timeoutfactor; timeoutfactor=$withval
else
timeoutfactor=1
fi
cat >>confdefs.h <<_ACEOF
#define TIMEOUTFACTOR $timeoutfactor
_ACEOF
# Check whether --enable-sanity-checks was given. # Check whether --enable-sanity-checks was given.
if test "${enable_sanity_checks+set}" = set; then : if test "${enable_sanity_checks+set}" = set; then :
enableval=$enable_sanity_checks; enable_sanity=$enableval enableval=$enable_sanity_checks; enable_sanity=$enableval

View File

@@ -163,6 +163,13 @@ AC_ARG_WITH([nonshared-cflags],
[extra_nonshared_cflags=]) [extra_nonshared_cflags=])
AC_SUBST(extra_nonshared_cflags) AC_SUBST(extra_nonshared_cflags)
AC_ARG_WITH([timeoutfactor],
AS_HELP_STRING([--with-timeoutfactor=NUM],
[specify an integer to scale the timeout]),
[timeoutfactor=$withval],
[timeoutfactor=1])
AC_DEFINE_UNQUOTED(TIMEOUTFACTOR, $timeoutfactor)
AC_ARG_ENABLE([sanity-checks], AC_ARG_ENABLE([sanity-checks],
AS_HELP_STRING([--disable-sanity-checks], AS_HELP_STRING([--disable-sanity-checks],
[really do not use threads (should not be used except in special situations) @<:@default=yes@:>@]), [really do not use threads (should not be used except in special situations) @<:@default=yes@:>@]),

View File

@@ -131,6 +131,11 @@ that the objects in @file{libc_nonshared.a} are compiled with this flag
(although this will not affect the generated code in this particular (although this will not affect the generated code in this particular
case and potentially change debugging information and metadata only). case and potentially change debugging information and metadata only).
@item --with-timeoutfactor=@var{NUM}
Specify an integer @var{NUM} to scale the timeout of test programs.
This factor can be changed at run time using @env{TIMEOUTFACTOR}
environment variable.
@c disable static doesn't work currently @c disable static doesn't work currently
@c @item --disable-static @c @item --disable-static
@c Don't build static libraries. Static libraries aren't that useful these @c Don't build static libraries. Static libraries aren't that useful these

View File

@@ -286,7 +286,7 @@ support_test_main (int argc, char **argv, const struct test_config *config)
int direct = 0; /* Directly call the test function? */ int direct = 0; /* Directly call the test function? */
int status; int status;
int opt; int opt;
unsigned int timeoutfactor = 1; unsigned int timeoutfactor = TIMEOUTFACTOR;
pid_t termpid; pid_t termpid;
/* If we're debugging the test, we need to disable timeouts and use /* If we're debugging the test, we need to disable timeouts and use