The raw_skew test currently sleeps for 120 seconds to estimate clock drift. This is a very long time for a single test, and can cause timeouts in automated test suites or CI systems.
Allow overriding the sleep time via a command line argument, so it can be adjusted if needed in different environments, while keeping the default at 120 seconds to preserve original behavior. Signed-off-by: Wake Liu <[email protected]> --- tools/testing/selftests/timers/raw_skew.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/tools/testing/selftests/timers/raw_skew.c b/tools/testing/selftests/timers/raw_skew.c index a7bae7d80916..03cdcecba8f4 100644 --- a/tools/testing/selftests/timers/raw_skew.c +++ b/tools/testing/selftests/timers/raw_skew.c @@ -92,6 +92,15 @@ int main(int argc, char **argv) struct timespec mon, raw, start, end; long long delta1, delta2, interval, eppm, ppm; struct timex tx1, tx2; + int sleep_sec = 120; + + if (argc > 1) { + sleep_sec = atoi(argv[1]); + if (sleep_sec <= 0) { + printf("Invalid sleep time, using default 120s\n"); + sleep_sec = 120; + } + } setbuf(stdout, NULL); @@ -109,9 +118,9 @@ int main(int argc, char **argv) if (tx1.offset) printf("WARNING: ADJ_OFFSET in progress, this will cause inaccurate results\n"); - printf("Estimating clock drift: "); + printf("Estimating clock drift (%ds): ", sleep_sec); fflush(stdout); - sleep(120); + sleep(sleep_sec); get_monotonic_and_raw(&mon, &raw); end = mon; -- 2.55.0.795.g602f6c329a-goog

