diff options
author | Christian König <christian.koenig@amd.com> | 2023-07-31 15:36:25 +0300 |
---|---|---|
committer | Boris Brezillon <boris.brezillon@collabora.com> | 2023-08-10 09:38:57 +0300 |
commit | 991eb531f482a4ebf2265028add882f149ef1bdc (patch) | |
tree | 1f8ec0673629326af5846b826d355938921a245d /drivers/gpu/drm/tests | |
parent | 616bceae250d0bab7ab2cbcb0791d820434ffb71 (diff) | |
download | linux-991eb531f482a4ebf2265028add882f149ef1bdc.tar.xz |
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 <boris.brezillon@collabora.com>
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230731123625.3766-2-christian.koenig@amd.com
Diffstat (limited to 'drivers/gpu/drm/tests')
-rw-r--r-- | drivers/gpu/drm/tests/drm_exec_test.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/drivers/gpu/drm/tests/drm_exec_test.c b/drivers/gpu/drm/tests/drm_exec_test.c index f79c9f0359aa..3610773c22cb 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), {} }; |