[rfc] drm sync objects (search for spock)
airlied at gmail.com
Wed Apr 26 03:28:28 UTC 2017
Okay I've gone around the sun with these a few times, and
pretty much implemented what I said last week.
This is pretty much a complete revamp.
1. sync objects are self contained drm objects, they
have a file reference so can be passed between processes.
2. Added a sync object wait interface modelled on the vulkan
fence waiting API.
3. sync_file interaction is explicitly different than
opaque fd passing, you import a sync file state into an
existing syncobj, or create a new sync_file from an
existing syncobj. This means no touching the sync file code
at all. \o/
I haven't used rcu anywhere here, I've used xchg to swap
fence pointers in the hope that's safe. If this does need
rcu'ing I suggest we do it in a follow on patch to minimise
the review pain.
More information about the dri-devel