Hi Philipp,
On 30/06/25 08:53, Philipp Stanner wrote:
On Wed, 2025-06-18 at 11:47 -0300, 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
I guess those times were measured with the entire series?
No, they were measured without the new test that I introduced in the
next patch.
It's not clear to me whether this patch is independent from the series.
I suppose it is. We should aim towards having series's narrowly focused
topic-wise, but I get why you included it here.
From my perspective, this patch is a preparation to the next one. As
I'll introduce another timeout-related test in the next patch, I was
trying to ensure that we will keep the time-budget reasonable.
That said, is there a specific reason for you aiming at ~10s (9.263)?
That's only a bit faster than the 15.637.
Actually, the only thing that this patch affects is the runtime. So, it
went from 5.229s to 4.037s (-22.8%). However, as we add more and more
timeout tests, the absolute difference would get more significant.
Couldn't it make sense, as you're at it already, to speed this up to
just a few seconds, like 3-5? Then it should really be quiet IRW that
topic for a while.
I believe that further decreasing the timeout could lead to racy
scenarios and flaky tests.
Best Regards,
- Maíra
P.
Signed-off-by: Maíra Canal <mca...@igalia.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursu...@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..41c648782f4548e202bd8711b45
d28eead9bd0b2 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);
KUNIT_ASSERT_EQ(test,