From dffaaf19c2c767598251f32c2f54512340ca5525 Mon Sep 17 00:00:00 2001 From: Greg Hogan Date: Fri, 8 Aug 2025 15:34:24 +0000 Subject: [PATCH] gnu: cmake-build: Prevent stalls initiating tests. * guix/build/cmake-build-system.scm (check): Set minimum bound for test-load so that system tasks do not prevent low-core machines from starting execution of the test suite. Change-Id: I8751bb5b42c2a66f160117729fcb5648a635341c --- guix/build/cmake-build-system.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/guix/build/cmake-build-system.scm b/guix/build/cmake-build-system.scm index 6d62b870edf5c88afd6657db19b5ed3253a50778..3d7512f0f257286c367ee32ee829b3a4c8b4f455 100644 --- a/guix/build/cmake-build-system.scm +++ b/guix/build/cmake-build-system.scm @@ -127,8 +127,12 @@ `("--exclude-regex" ,test-exclude)) ,@(if parallel-tests? `("-j" ,(number->string (parallel-job-count)) + ;; ctest waits to start tests when the CPU load is + ;; above this threshold. Set a lower bound for low-core + ;; machines to prevent stalling as may occur due to + ;; system tasks even when no builds are running. "--test-load" - ,(number->string (total-processor-count))) + ,(number->string (max 4 (total-processor-count)))) ;; When unset CMake defers to the build system. '("-j" "1")) ,@(if test-repeat-until-pass?