2022-10-28 14:27:18

by Arthur Grillo

[permalink] [raw]
Subject: [PATCH v4] drm/tests: Add back seed value information

As reported by Michał the drm_mm and drm_buddy unit tests lost the
printk with seed value after they were refactored into KUnit.

Add kunit_info with seed value information to assure reproducibility.

Reported-by: Michał Winiarski <[email protected]>
Signed-off-by: Arthur Grillo <[email protected]>
---
v1->v2: https://lore.kernel.org/all/[email protected]/
- Correct compilation issues
- Change tags order
- Remove useless line change
- Write commit message in imperative form
- Remove redundant message part
- Correct some grammars nits
- Correct checkpatch issues

v2->v3: https://lore.kernel.org/all/[email protected]/
- Change .init to .suite_init
- Correct some grammars nits

v3->v4:
- Correct compilation issues

---
drivers/gpu/drm/tests/drm_buddy_test.c | 6 ++++--
drivers/gpu/drm/tests/drm_mm_test.c | 8 ++++++--
2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/tests/drm_buddy_test.c b/drivers/gpu/drm/tests/drm_buddy_test.c
index 62f69589a72d..90ec5e8a485b 100644
--- a/drivers/gpu/drm/tests/drm_buddy_test.c
+++ b/drivers/gpu/drm/tests/drm_buddy_test.c
@@ -726,11 +726,13 @@ static void drm_test_buddy_alloc_limit(struct kunit *test)
drm_buddy_fini(&mm);
}

-static int drm_buddy_init_test(struct kunit *test)
+static int drm_buddy_init_suite(struct kunit_suite *suite)
{
while (!random_seed)
random_seed = get_random_u32();

+ kunit_info(suite, "Testing DRM buddy manager, with random_seed=0x%x\n", random_seed);
+
return 0;
}

@@ -746,7 +748,7 @@ static struct kunit_case drm_buddy_tests[] = {

static struct kunit_suite drm_buddy_test_suite = {
.name = "drm_buddy",
- .init = drm_buddy_init_test,
+ .suite_init = drm_buddy_init_suite,
.test_cases = drm_buddy_tests,
};

diff --git a/drivers/gpu/drm/tests/drm_mm_test.c b/drivers/gpu/drm/tests/drm_mm_test.c
index c4b66eeae203..4663e4611976 100644
--- a/drivers/gpu/drm/tests/drm_mm_test.c
+++ b/drivers/gpu/drm/tests/drm_mm_test.c
@@ -2209,11 +2209,15 @@ static void drm_test_mm_color_evict_range(struct kunit *test)
vfree(nodes);
}

-static int drm_mm_init_test(struct kunit *test)
+static int drm_mm_init_suite(struct kunit_suite *suite)
{
while (!random_seed)
random_seed = get_random_u32();

+ kunit_info(suite,
+ "Testing DRM range manager, with random_seed=0x%x max_iterations=%u max_prime=%u\n",
+ random_seed, max_iterations, max_prime);
+
return 0;
}

@@ -2246,7 +2250,7 @@ static struct kunit_case drm_mm_tests[] = {

static struct kunit_suite drm_mm_test_suite = {
.name = "drm_mm",
- .init = drm_mm_init_test,
+ .suite_init = drm_mm_init_suite,
.test_cases = drm_mm_tests,
};

--
2.37.3



2022-10-28 20:59:39

by Maira Canal

[permalink] [raw]
Subject: Re: [PATCH v4] drm/tests: Add back seed value information

Hi Arthur,

Just a small nit below, but besides that:

Reviewed-by: Maíra Canal <[email protected]>

On 10/28/22 11:17, Arthur Grillo wrote:
> As reported by Michał the drm_mm and drm_buddy unit tests lost the
> printk with seed value after they were refactored into KUnit.
>
> Add kunit_info with seed value information to assure reproducibility.
>
> Reported-by: Michał Winiarski <[email protected]>
> Signed-off-by: Arthur Grillo <[email protected]>
> ---
> v1->v2: https://lore.kernel.org/all/[email protected]/
> - Correct compilation issues
> - Change tags order
> - Remove useless line change
> - Write commit message in imperative form
> - Remove redundant message part
> - Correct some grammars nits
> - Correct checkpatch issues
>
> v2->v3: https://lore.kernel.org/all/[email protected]/
> - Change .init to .suite_init
> - Correct some grammars nits
>
> v3->v4:
> - Correct compilation issues
>
> ---
> drivers/gpu/drm/tests/drm_buddy_test.c | 6 ++++--
> drivers/gpu/drm/tests/drm_mm_test.c | 8 ++++++--
> 2 files changed, 10 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/tests/drm_buddy_test.c b/drivers/gpu/drm/tests/drm_buddy_test.c
> index 62f69589a72d..90ec5e8a485b 100644
> --- a/drivers/gpu/drm/tests/drm_buddy_test.c
> +++ b/drivers/gpu/drm/tests/drm_buddy_test.c
> @@ -726,11 +726,13 @@ static void drm_test_buddy_alloc_limit(struct kunit *test)
> drm_buddy_fini(&mm);
> }
>
> -static int drm_buddy_init_test(struct kunit *test)
> +static int drm_buddy_init_suite(struct kunit_suite *suite)

Just to keep complaint to the rest of the KUnit tests (such as kcsan,
kfence, kmsan), could you change "init_suite" to "suite_init"? Same
thing for the drm_mm test.

Thanks for the quick respin of the patch!

Best Regards,
- Maíra Canal

> {
> while (!random_seed)
> random_seed = get_random_u32();
>
> + kunit_info(suite, "Testing DRM buddy manager, with random_seed=0x%x\n", random_seed);
> +
> return 0;
> }
>
> @@ -746,7 +748,7 @@ static struct kunit_case drm_buddy_tests[] = {
>
> static struct kunit_suite drm_buddy_test_suite = {
> .name = "drm_buddy",
> - .init = drm_buddy_init_test,
> + .suite_init = drm_buddy_init_suite,
> .test_cases = drm_buddy_tests,
> };
>