All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC] DRM synchronisation objects
@ 2017-04-04  4:27 Dave Airlie
  2017-04-04  4:27 ` [PATCH 1/8] sync_file: add type/flags to sync file object creation Dave Airlie
                   ` (10 more replies)
  0 siblings, 11 replies; 31+ messages in thread
From: Dave Airlie @ 2017-04-04  4:27 UTC (permalink / raw)
  To: dri-devel

This series enhances my previous semaphore work on for amdgpu,
with a generic DRM sync object. (drm_syncobj).

It first enhances sync_file to have a type/flags so we can have
different semantics for different sync files, and a wait
to retrieve the type of sync_file for userspace.

Then it adds drm sync objects which are just a drm wrapper around
a sync_file object, allowing creation/info/destroy and import/export
of the objects.

Next it enhances sync_file to have semaphore semantics for Vulkan.

Finally it adds amdgpu support to it's command submission paths to
use the new code.

I've hopefully fixed up the things pointed out in the last 
review of the sync_file fence changes, I do wonder if we should
just block poll on semaphore objects as currently I've no use
case for this.

Dave.

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply	[flat|nested] 31+ messages in thread
* [repost] drm sync objects cleaned up
@ 2017-04-11  3:22 Dave Airlie
       [not found] ` <20170411032220.21101-1-airlied-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  0 siblings, 1 reply; 31+ messages in thread
From: Dave Airlie @ 2017-04-11  3:22 UTC (permalink / raw)
  To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
	dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW

This set of sync object patches should address most of the issues
raised in review.

The major changes:
Race on destroy should be gone,
Documentation fixups
amdgpu internal use p instead of adev fixups

My plans are to write some igt tests this week, and try
to get some more review on what the API should allow (should
I lock it down to drm syncobj is just semaphores for now).

Dave.

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

^ permalink raw reply	[flat|nested] 31+ messages in thread
* drm sync objects (vn+1)
@ 2017-04-12  4:57 Dave Airlie
       [not found] ` <20170412045726.13689-1-airlied-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
  0 siblings, 1 reply; 31+ messages in thread
From: Dave Airlie @ 2017-04-12  4:57 UTC (permalink / raw)
  To: amd-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW,
	dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW

Okay another day, another sync object patchset.

In my drm-syncobj branch.

This round should:
a) address the amdgpu CS ERESTARTSYS failure case, I've reworked
the sync_file/syncobj/amdgpu bits to have a lookup and just replace
in separate phases and just do the wait lookup and sync, then later
replace the waits with NULL, once the CS is submitted.

b) Block polling on the semaphore sync files, and cease worrying
about the polling state and callback when doing the replace fence
dance, which can only be called on semaphore sync files.

c) Add IGT tests - in my fd.o intel-gpu-tools repo syncobj branch,
are a basic sets of tests to do bad things and poke some corner
cases, and I've fixed up most of these in here hopefully. Checks
that padding is 0, legal fds, poll doesn't work etc.

d) bump SYNCOBJ CAP to 0x13 as 0x12 is already in use in drm-next.

Dave.

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

^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2017-04-12  4:57 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-04  4:27 [RFC] DRM synchronisation objects Dave Airlie
2017-04-04  4:27 ` [PATCH 1/8] sync_file: add type/flags to sync file object creation Dave Airlie
2017-04-04  7:08   ` Daniel Vetter
2017-04-04  4:27 ` [PATCH 2/8] sync_file: export some interfaces needed by drm sync objects Dave Airlie
2017-04-04  7:10   ` Daniel Vetter
2017-04-04  4:27 ` [PATCH 3/8] drm: introduce sync objects as sync file objects with no fd Dave Airlie
2017-04-04  7:42   ` Daniel Vetter
     [not found]     ` <CAPM=9tyj6k4hqJWrwDW8Ch+TZCOoXRuAK2g71ciUm5vxpwmkuw@mail.gmail.com>
     [not found]       ` <CAKMK7uFoFvsREVtSxsoOeM6OPDM-iGOATtcAK6p65LzG39D6oQ@mail.gmail.com>
2017-04-11  6:00         ` Daniel Vetter
2017-04-04  4:27 ` [PATCH 4/8] sync_file: add a mutex to protect fence and callback members. (v4) Dave Airlie
2017-04-04  7:52   ` Daniel Vetter
2017-04-04  8:07   ` Christian König
2017-04-11  2:57     ` Dave Airlie
2017-04-04  4:27 ` [PATCH 5/8] sync_file: add support for a semaphore object Dave Airlie
2017-04-04  7:59   ` Daniel Vetter
2017-04-04 11:52   ` Chris Wilson
2017-04-04 11:59     ` Chris Wilson
2017-04-04  4:27 ` [PATCH 6/8] drm/syncobj: add semaphore support helpers Dave Airlie
2017-04-04  8:07   ` Daniel Vetter
2017-04-04  4:27 ` [PATCH 7/8] amdgpu/cs: split out fence dependency checking Dave Airlie
2017-04-04  7:37   ` Christian König
2017-04-04  4:27 ` [PATCH 8/8] amdgpu: use sync file for shared semaphores (v2) Dave Airlie
2017-04-04  7:40   ` Christian König
2017-04-04  8:10     ` Daniel Vetter
2017-04-04 11:05       ` Christian König
2017-04-11  3:18         ` Dave Airlie
2017-04-11  6:55           ` Christian König
2017-04-04  4:35 ` [RFC] DRM synchronisation objects Dave Airlie
2017-04-04  8:02 ` Christian König
2017-04-04  8:11 ` Daniel Vetter
2017-04-11  3:22 [repost] drm sync objects cleaned up Dave Airlie
     [not found] ` <20170411032220.21101-1-airlied-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-04-11  3:22   ` [PATCH 7/8] amdgpu/cs: split out fence dependency checking Dave Airlie
2017-04-12  4:57 drm sync objects (vn+1) Dave Airlie
     [not found] ` <20170412045726.13689-1-airlied-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-04-12  4:57   ` [PATCH 7/8] amdgpu/cs: split out fence dependency checking Dave Airlie

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.