drm/prime: add a bit of documentation about gem_obj->import_attach
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Wed, 14 Aug 2013 22:02:33 +0000 (00:02 +0200)
committerDave Airlie <airlied@redhat.com>
Mon, 19 Aug 2013 00:46:35 +0000 (10:46 +1000)
Lifetime rules seem to be solid around ->import_attach. So this patch
just properly documents them.

Note that pointing directly at the attachment might have issues for
devices that have multiple struct device *dev parts constituting the
logical gpu and so might need multiple attachment points. Similarly
for drm devices which don't need a dma attachment at all (like udl).

But fixing that up is material for different patches.

Reviewed-by: Rob Clark <robdclark@gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Dave Airlie <airlied@redhat.com>
include/drm/drmP.h

index 5ebed3ea10ba56ed66bfa4684c6a7462b1d6c120..5dc98947375c3548aa4311860d26d064ee50136f 100644 (file)
@@ -665,7 +665,16 @@ struct drm_gem_object {
        /* dma buf exported from this GEM object */
        struct dma_buf *export_dma_buf;
 
-       /* dma buf attachment backing this object */
+       /**
+        * import_attach - dma buf attachment backing this object
+        *
+        * Any foreign dma_buf imported as a gem object has this set to the
+        * attachment point for the device. This is invariant over the lifetime
+        * of a gem object.
+        *
+        * The driver's ->gem_free_object callback is responsible for cleaning
+        * up the dma_buf attachment and references acquired at import time.
+        */
        struct dma_buf_attachment *import_attach;
 };