All of lore.kernel.org
 help / color / mirror / Atom feed
From: robert.foss@collabora.com
To: intel-gfx@lists.freedesktop.org,
	Gustavo Padovan <gustavo.padovan@collabora.com>,
	Daniel Stone <daniels@collabora.com>,
	Daniel Vetter <daniel@ffwll.ch>,
	Marius Vlad <marius.c.vlad@intel.com>,
	Eric Engestrom <eric@engestrom.ch>,
	Chris Wilson <chris@chris-wilson.co.uk>,
	Tomeu Vizoso <tomeu@tomeuvizoso.net>
Subject: [PATCH i-g-t v6 00/21] Implement sw_sync test
Date: Fri, 18 Nov 2016 09:59:54 -0500	[thread overview]
Message-ID: <20161118150015.10745-1-robert.foss@collabora.com> (raw)

From: Robert Foss <robert.foss@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@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


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
  tests/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

 .settings/language.settings.xml |   25 +
 lib/Makefile.sources            |    2 +
 lib/sw_sync.c                   |  222 +++++
 lib/sw_sync.h                   |   49 ++
 tests/Makefile.sources          |    1 +
 tests/drm_fence                 |  Bin 0 -> 901032 bytes
 tests/kms_atomic.c.orig         | 1803 +++++++++++++++++++++++++++++++++++++++
 tests/kms_atomic.c.rej          |   15 +
 tests/kms_fence                 |  Bin 0 -> 1798632 bytes
 tests/sw_sync.c                 |  961 +++++++++++++++++++++
 tests/sw_sync.c.orig            |  694 +++++++++++++++
 11 files changed, 3772 insertions(+)
 create mode 100644 .settings/language.settings.xml
 create mode 100644 lib/sw_sync.c
 create mode 100644 lib/sw_sync.h
 create mode 100755 tests/drm_fence
 create mode 100644 tests/kms_atomic.c.orig
 create mode 100644 tests/kms_atomic.c.rej
 create mode 100755 tests/kms_fence
 create mode 100644 tests/sw_sync.c
 create mode 100644 tests/sw_sync.c.orig

-- 
2.10.2

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

             reply	other threads:[~2016-11-18 15:00 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-11-18 14:59 robert.foss [this message]
2016-11-18 14:59 ` [PATCH i-g-t v6 01/21] lib/sw_sync: Add helper functions for managing synchronization primitives robert.foss
2016-11-18 14:59 ` [PATCH i-g-t v6 02/21] tests/sw_sync: Add sw_sync test robert.foss
2016-11-18 14:59 ` [PATCH i-g-t v6 03/21] tests/sw_sync: Add subtest test_alloc_fence robert.foss
2016-11-18 14:59 ` [PATCH i-g-t v6 04/21] tests/sw_sync: Add subtest test_alloc_fence_invalid_timeline robert.foss
2016-11-18 14:59 ` [PATCH i-g-t v6 05/21] tests/sw_sync: Add subtest test_alloc_merge_fence robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 06/21] tests/sw_sync: Add subtest test_sync_busy robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 07/21] tests/sw_sync: Add subtest test_sync_merge robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 08/21] tests/sw_sync: Add subtest test_sync_merge_same robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 09/21] tests/sw_sync: Add subtest test_sync_multi_consumer robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 10/21] tests/sw_sync: Add subtest test_sync_multi_consumer_producer robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 11/21] tests/sw_sync: Add subtest test_sync_random_merge robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 12/21] tests/sw_sync: Add subtest test_sync_multi_timeline_wait robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 13/21] tests/sw_sync: Add subtest test_sync_multi_producer_single_consumer robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 14/21] tests/sw_sync: Add subtest test_sync_expired_merge robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 15/21] tests/sw_sync: Add subtest test_timeline_closed robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 16/21] tests/sw_sync: Add subtest test_timeline_closed_signaled robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 17/21] lib/sw_sync: Add igt_require_sw_sync to enable skipping on no sw_sync support robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 18/21] tests/sw_sync: Add igt_require check for sw_sync feature robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 19/21] tests/sw_sync: Add subtest test_sync_merge_invalid robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 20/21] tests/sw_sync: Add subtest test_sync_busy_fork robert.foss
2016-11-18 15:00 ` [PATCH i-g-t v6 21/21] tests/sw_sync: Add subtest test_sync_busy_unixsocket robert.foss
2016-11-18 15:48 ` [PATCH i-g-t v6 00/21] Implement sw_sync test Robert Foss
  -- strict thread matches above, loose matches on Subject: below --
2016-11-17 15:01 robert.foss

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20161118150015.10745-1-robert.foss@collabora.com \
    --to=robert.foss@collabora.com \
    --cc=chris@chris-wilson.co.uk \
    --cc=daniel@ffwll.ch \
    --cc=daniels@collabora.com \
    --cc=eric@engestrom.ch \
    --cc=gustavo.padovan@collabora.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=marius.c.vlad@intel.com \
    --cc=tomeu@tomeuvizoso.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.