diff options
Diffstat (limited to 'tests/sw_sync.c')
-rw-r--r-- | tests/sw_sync.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/sw_sync.c b/tests/sw_sync.c index e88ecde4..26bdd210 100644 --- a/tests/sw_sync.c +++ b/tests/sw_sync.c @@ -71,6 +71,20 @@ static void test_alloc_fence_invalid_timeline(void) "Did not fail to create fence on invalid timeline\n"); } +static void test_timeline_closed(void) +{ + int fence, ret; + int timeline; + + timeline = sw_sync_timeline_create(); + fence = sw_sync_fence_create(timeline, 1); + + close(timeline); + ret = sync_wait(fence, 0); + igt_assert_f(ret == -1 && errno == ETIME, + "Failure waiting on unsignaled fence on closed timeline\n"); +} + static void test_alloc_merge_fence(void) { int in_fence[2]; @@ -702,6 +716,9 @@ igt_main igt_subtest("alloc_fence_invalid_timeline") test_alloc_fence_invalid_timeline(); + igt_subtest("timeline_closed") + test_timeline_closed(); + igt_subtest("alloc_merge_fence") test_alloc_merge_fence(); |