[PATCH] intel: Mark bo's exported to prime as not reusable

Chris Wilson chris at chris-wilson.co.uk
Fri Sep 14 14:03:41 PDT 2012


On Fri, 14 Sep 2012 17:01:18 -0400, Kristian Høgsberg <krh at bitplanet.net> wrote:
> On Fri, Sep 14, 2012 at 4:40 PM, Chris Wilson <chris at chris-wilson.co.uk> wrote:
> > On Fri, 14 Sep 2012 16:37:53 -0400, Kristian Høgsberg <krh at bitplanet.net> wrote:
> >> It's the same situation as flink and we need take the same pre-cautions.
> >> ---
> >>  intel/intel_bufmgr_gem.c |    8 +++++++-
> >>  1 file changed, 7 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/intel/intel_bufmgr_gem.c b/intel/intel_bufmgr_gem.c
> >> index 3bcc849..92c0444 100644
> >> --- a/intel/intel_bufmgr_gem.c
> >> +++ b/intel/intel_bufmgr_gem.c
> >> @@ -2472,8 +2472,14 @@ drm_intel_bo_gem_export_to_prime(drm_intel_bo *bo, int *prime_fd)
> >>  {
> >>       drm_intel_bufmgr_gem *bufmgr_gem = (drm_intel_bufmgr_gem *) bo->bufmgr;
> >>       drm_intel_bo_gem *bo_gem = (drm_intel_bo_gem *) bo;
> >> +     int ret;
> >>
> >> -     return drmPrimeHandleToFD(bufmgr_gem->fd, bo_gem->gem_handle, DRM_CLOEXEC, prime_fd);
> >> +     ret = drmPrimeHandleToFD(bufmgr_gem->fd, bo_gem->gem_handle,
> >> +                              DRM_CLOEXEC, prime_fd);
> >> +     if (ret == 0)
> >> +             bo_gem->reusable = false;
> >
> > Now that you mention it...
> > To be consistent with libdrm_intel, we should return -errno on error; so
> > rephrasing this as
> >   if (ret)
> >     return -errno;
> >
> >   bo_gem->reusable = false;
> >   return 0;
> >
> > would work better.
> 
> Argh, yes, I copy and pasted that from drm_intel_gem_bo_flink() but
> edited it away later...  with that change, can I add your reviewed-by
> and commit?

Yes,

Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the dri-devel mailing list