On Fri, Sep 30, 2016 at 01:53:06PM -0700, Rafael Antognolli wrote: > Hi Chris, > > On Thu, Aug 25, 2016 at 10:08:33AM +0100, Chris Wilson wrote: > > Allow the caller to pass in an fd to an array of fences to control > > serialisation of the execbuf in the kernel and on the GPU, and in return > > allow creation of a fence fd for signaling the completion (and flushing) > > of the batch. When the returned fence is signaled, all writes to the > > buffers inside the batch will be complete and coherent from the cpu, or > > other consumers. The return fence is a sync_file object and can be > > passed to other users (such as atomic modesetting, or other drivers). > > > > Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> > > --- > > intel/intel_bufmgr.h | 6 ++++++ > > intel/intel_bufmgr_gem.c | 38 +++++++++++++++++++++++++++++++++----- > > 2 files changed, 39 insertions(+), 5 deletions(-) > > > > diff --git a/intel/intel_bufmgr_gem.c b/intel/intel_bufmgr_gem.c > > index 259543f..02ec757 100644 > > --- a/intel/intel_bufmgr_gem.c > > +++ b/intel/intel_bufmgr_gem.c > > @@ -2412,13 +2419,20 @@ do_exec2(drm_intel_bo *bo, int used, drm_intel_context *ctx, > > i915_execbuffer2_set_context_id(execbuf, 0); > > else > > i915_execbuffer2_set_context_id(execbuf, ctx->ctx_id); > > - execbuf.rsvd2 = 0; > > + if (in_fence != -1) { > > + execbuf.rsvd2 = in_fence; > > + flags |= I915_EXEC_FENCE_IN; > > The flags are being set here, but not really used anywhere. > Maybe you meant something like: > > execbuf.flags |= I915_EXEC_FENCE_IN; Oops. -Chris -- Chris Wilson, Intel Open Source Technology Centre _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx