Doesn't do more than an if (drmtest_run_test(name)) right now, but
as soon as we get a bit of infrastructure to handle test failures and
skipping, this will get more interesting.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
We want prime to only ever create one native gem object for each
dma-buf it sees. This can e.g. happen if multiple processes import the
same foreign dma-buf, e.g. the application imports a yuv frame from
v4l to encode it into a video stream and the compositor imports it
into his fd again to display it with an overlay.
Hence add a bunch of tests which check all the various orders in which
this could happen. Currently they all fail.
Checking flink names is the easiest (and afaik only) way to check
whether we're indeed dealing with the same object.
This checks both ways, i.e. exporting from i915 and from nouveau, each
with two variants of the test: One reuses the prime fd, the other
closes it and creates a new one.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
It's purely accidental that importing that same bo to different
drm nouveau fds yields the same handle.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
We share these suckers, hence the fd-local libdrn instance does not
have full control over the lifecycle of the object. Prevents the tests
from blowing up with
[drm:i915_gem_mmap_gtt] *ERROR* Attempting to mmap a purgeable buffer
and similar things.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>