From: Christian König Date: Mon, 31 Jul 2023 12:36:25 +0000 (+0200) Subject: drm/exec: add test case for using a drm_exec multiple times X-Git-Tag: v6.6.17~3937^2~14^2~4 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=991eb531f482a4ebf2265028add882f149ef1bdc;p=platform%2Fkernel%2Flinux-rpi.git drm/exec: add test case for using a drm_exec multiple times Not really a common use case, but let's make sure that we don't accidentially break that somehow. CC: Boris Brezillon Signed-off-by: Christian König Reviewed-by: Boris Brezillon Signed-off-by: Boris Brezillon Link: https://patchwork.freedesktop.org/patch/msgid/20230731123625.3766-2-christian.koenig@amd.com --- diff --git a/drivers/gpu/drm/tests/drm_exec_test.c b/drivers/gpu/drm/tests/drm_exec_test.c index f79c9f0..3610773 100644 --- a/drivers/gpu/drm/tests/drm_exec_test.c +++ b/drivers/gpu/drm/tests/drm_exec_test.c @@ -167,6 +167,26 @@ static void test_prepare_array(struct kunit *test) drm_exec_fini(&exec); } +static void test_multiple_loops(struct kunit *test) +{ + struct drm_exec exec; + + drm_exec_init(&exec, DRM_EXEC_INTERRUPTIBLE_WAIT); + drm_exec_until_all_locked(&exec) + { + break; + } + drm_exec_fini(&exec); + + drm_exec_init(&exec, DRM_EXEC_INTERRUPTIBLE_WAIT); + drm_exec_until_all_locked(&exec) + { + break; + } + drm_exec_fini(&exec); + KUNIT_SUCCEED(test); +} + static struct kunit_case drm_exec_tests[] = { KUNIT_CASE(sanitycheck), KUNIT_CASE(test_lock), @@ -174,6 +194,7 @@ static struct kunit_case drm_exec_tests[] = { KUNIT_CASE(test_duplicates), KUNIT_CASE(test_prepare), KUNIT_CASE(test_prepare_array), + KUNIT_CASE(test_multiple_loops), {} };