[PATCH v2 3/8] drm/sched: Reduce scheduler's timeout for timeout tests
Tvrtko Ursulin
tvrtko.ursulin at igalia.com
Mon Jun 2 09:06:01 UTC 2025
On 30/05/2025 15:01, Maíra Canal wrote:
> As more KUnit tests are introduced to evaluate the basic capabilities of
> the `timedout_job()` hook, the test suite will continue to increase in
> duration. To reduce the overall running time of the test suite, decrease
> the scheduler's timeout for the timeout tests.
>
> Before this commit:
>
> [15:42:26] Elapsed time: 15.637s total, 0.002s configuring, 10.387s building, 5.229s running
>
> After this commit:
>
> [15:45:26] Elapsed time: 9.263s total, 0.002s configuring, 5.168s building, 4.037s running
>
> Signed-off-by: Maíra Canal <mcanal at igalia.com>
> ---
> drivers/gpu/drm/scheduler/tests/tests_basic.c | 8 +++++---
> 1 file changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/scheduler/tests/tests_basic.c b/drivers/gpu/drm/scheduler/tests/tests_basic.c
> index 7230057e0594c6246f02608f07fcb1f8d738ac75..41c648782f4548e202bd8711b45d28eead9bd0b2 100644
> --- a/drivers/gpu/drm/scheduler/tests/tests_basic.c
> +++ b/drivers/gpu/drm/scheduler/tests/tests_basic.c
> @@ -5,6 +5,8 @@
>
> #include "sched_tests.h"
>
> +#define MOCK_TIMEOUT (HZ / 5)
> +
> /*
> * DRM scheduler basic tests should check the basic functional correctness of
> * the scheduler, including some very light smoke testing. More targeted tests,
> @@ -28,7 +30,7 @@ static void drm_sched_basic_exit(struct kunit *test)
>
> static int drm_sched_timeout_init(struct kunit *test)
> {
> - test->priv = drm_mock_sched_new(test, HZ);
> + test->priv = drm_mock_sched_new(test, MOCK_TIMEOUT);
>
> return 0;
> }
> @@ -227,14 +229,14 @@ static void drm_sched_basic_timeout(struct kunit *test)
> done = drm_mock_sched_job_wait_scheduled(job, HZ);
> KUNIT_ASSERT_TRUE(test, done);
>
> - done = drm_mock_sched_job_wait_finished(job, HZ / 2);
> + done = drm_mock_sched_job_wait_finished(job, MOCK_TIMEOUT / 2);
> KUNIT_ASSERT_FALSE(test, done);
>
> KUNIT_ASSERT_EQ(test,
> job->flags & DRM_MOCK_SCHED_JOB_TIMEDOUT,
> 0);
>
> - done = drm_mock_sched_job_wait_finished(job, HZ);
> + done = drm_mock_sched_job_wait_finished(job, MOCK_TIMEOUT);
> KUNIT_ASSERT_FALSE(test, done);
Thinking about the potential for false negatives - scheduler timeout is
set to 200ms and total wait is 300ms before checking if the timeout hook
was executed by the scheduler core. So false negative only if scheduler
core would be lax with the timed out work handling. Or the lax delayed
work mechanism. Probably fine until we learn otherwise.
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin at igalia.com>
Regards,
Tvrtko
>
> KUNIT_ASSERT_EQ(test,
>
More information about the Intel-xe
mailing list