[Intel-gfx] [PATCH i-g-t v9 00/21] Implement sw_sync test
Tomeu Vizoso
tomeu at tomeuvizoso.net
Mon Dec 5 13:24:24 UTC 2016
This series has my Reviewed-by tag with the small issues I pointed out
addressed. But I think it would be very good if you could go through
all the igt_assert* calls and make sure that no information is being
lost that could aid in triaging and debugging.
The messages you chose for igt_assert_f were very good in explaining
*what* went wrong, but if the values used in the comparison were
contained in the string, the person reading the logs would have a
better chance of understanding *why* without having to instrument the
code and re-run.
Thanks,
Tomeu
On 22 November 2016 at 14:28, <robert.foss at collabora.com> wrote:
> From: Robert Foss <robert.foss at collabora.com>
>
> This series implements the sw_sync test and the lib/sw_sync helper functions
> for said test.
>
> The sw_sync subtests range from very basic tests of the sw_sync functionality,
> to stress testing and randomized tests.
>
>
> Changes since v1:
> Added "Reviewed-by: Eric Engestrom <eric at engestrom.ch>" tag
>
> lib/sw_sync:
> - Fixed fd value checking
> - Fixed fd validity check in sw_sync_fd_close()
> - Moved sw_sync related paths to define
> - Switched from malloc+memset to calloc in sync_file_info()
> - Switched sizeof to dereferenced ptr
>
> tests/sw_sync:
> - Moved lib/sw_sync related code to lib/sw_sync commit
> - Replaced memset with assignment in loop
>
>
> Changes since v2:
>
> lib/sw_sync:
> - Replaced fd validity check in sw_sync_timeline_create()
> - Replace sw_sync_XXX_destroy() functions with close()
> - Simplified sw_sync_timeline_inc() comparison
> - Changed sw_sync_merge() return value to -errno
> - Changed name of sw_sync_fence_size() to sw_sync_fence_count()
> - Reworked implementation of sw_sync_fence_count()
> - Reworked implementation of sw_sync_fence_count_status()
>
> tests/sw_sync:
> - Replace sw_sync_XXX_destroy() functions with close()
>
>
> Changes since v3:
>
> lib/sw_sync:
> - Changed sw_sync_fence_create() to take uint32_t seqno
> - Added raw __sw_sync_fence_create() and failure check sw_sync_fence_create()
>
> tests/sw_sync:
> - Switch to using __sw_sync_fence_create() for failure cases
>
>
> Changes since v4:
>
> lib/sw_sync:
> - Fixed whitespace in sw_sync_fence_count()
> - Fixed whitespace and style of sw_sync_wait()
> - Fixed whitespace in __sw_sync_fence_count_status()
>
>
> Changes since v5:
>
> lib/sw_sync:
> - Added kernel_has_sw_sync()
> - Added igt_require_sw_sync()
> - Split out __sw_sync_merge() from sw_sync_merge()
> - Added igt_debugfs.h include
> - Change sw_sync_wait to reflect android implementation
> - Renamed some functions:
> - sw_sync_merge -> sync_merge
> - sw_sync_wait -> sync_wait
> - sw_sync_fence_count -> sync_fence_count
> - sw_sync_fence_count_status -> sync_fence_count_status
> - __sw_sync_fence_count_status -> __sync_fence_count_status
>
> tests/sw_sync:
> - Added subtest test_sync_expired_merge
> - Added subtest test_timeline_closed
> - Added subtest test_timeline_closed_signaled
> - Added subtest test_sync_merge_invalid
> - Added subtest test_sync_busy_fork
> - Added subtest test_sync_busy_unixsockets
> - Skip test on no sw_sync support
> - Reworked comments of test_sync_wait
> - Renamed test_sync_wait -> test_sync_busy
> - Improved test_sync_wait igt_assert_f messages
>
>
> Changes since v6:
>
> tests/sw_sync:
> - Added igt_assert to test_sync_expired_merge
> - Added prime increments to test_sync_busy
>
>
> Changes since v7:
>
> - Removed accidental inclusions
>
>
> Changes since v8:
>
> - Removed some more accidental inclusions
>
> lib/sw_sync:
> - Moved some changes into the lib/sw_sync commit
>
> Rafael Antognolli (1):
> tests/sw_sync: Add subtest test_sync_expired_merge
>
> Robert Foss (20):
> lib/sw_sync: Add helper functions for managing synchronization
> primitives
> test/sw_sync: Add sw_sync test
> tests/sw_sync: Add subtest test_alloc_fence
> tests/sw_sync: Add subtest test_alloc_fence_invalid_timeline
> tests/sw_sync: Add subtest test_alloc_merge_fence
> tests/sw_sync: Add subtest test_sync_busy
> tests/sw_sync: Add subtest test_sync_merge
> tests/sw_sync: Add subtest test_sync_merge_same
> tests/sw_sync: Add subtest test_sync_multi_consumer
> tests/sw_sync: Add subtest test_sync_multi_consumer_producer
> tests/sw_sync: Add subtest test_sync_random_merge
> tests/sw_sync: Add subtest test_sync_multi_timeline_wait
> tests/sw_sync: Add subtest test_sync_multi_producer_single_consumer
> tests/sw_sync: Add subtest test_timeline_closed
> tests/sw_sync: Add subtest test_timeline_closed_signaled
> lib/sw_sync: Add igt_require_sw_sync to enable skipping on no sw_sync
> support
> tests/sw_sync: Add igt_require check for sw_sync feature
> tests/sw_sync: Add subtest test_sync_merge_invalid
> tests/sw_sync: Add subtest test_sync_busy_fork
> tests/sw_sync: Add subtest test_sync_busy_unixsocket
>
> lib/Makefile.sources | 2 +
> lib/sw_sync.c | 222 ++++++++++++
> lib/sw_sync.h | 49 +++
> tests/Makefile.sources | 1 +
> tests/sw_sync.c | 961 +++++++++++++++++++++++++++++++++++++++++++++++++
> 5 files changed, 1235 insertions(+)
> create mode 100644 lib/sw_sync.c
> create mode 100644 lib/sw_sync.h
> create mode 100644 tests/sw_sync.c
>
> --
> 2.10.2
>
More information about the Intel-gfx
mailing list