summaryrefslogtreecommitdiff
path: root/tests/sw_sync.c
diff options
context:
space:
mode:
authorRobert Foss <robert.foss@collabora.com>2016-12-07 15:07:48 -0500
committerTomeu Vizoso <tomeu.vizoso@collabora.com>2016-12-14 09:24:11 +0100
commit5312aef7533783a15ac432e633edfdb9b55058f0 (patch)
tree701f4062cf9531c0da9c7b6d72f58be4f2848f27 /tests/sw_sync.c
parent99331e269d35f786ad7b305012afb242d9b44ead (diff)
tests/sw_sync: Add subtest test_timeline_closed
This subtest verifies that the fences of a timeline are not signalled when a timelne is closed. Signed-off-by: Robert Foss <robert.foss@collabora.com> Reviewed-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Diffstat (limited to 'tests/sw_sync.c')
-rw-r--r--tests/sw_sync.c17
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();