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 <mca...@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.ursu...@igalia.com>

Regards,

Tvrtko

KUNIT_ASSERT_EQ(test,


Reply via email to