From: Christopher James Halse Rogers <christopher.halse.rog...@canonical.com>

Attempting to migrate the bo will break the sharing of the buffer.

v2: Error-check the nouveau_bo_pin call; it can fail.

Signed-off-by: Christopher James Halse Rogers 
<christopher.halse.rog...@canonical.com>
---
 drivers/gpu/drm/nouveau/nouveau_prime.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/nouveau/nouveau_prime.c 
b/drivers/gpu/drm/nouveau/nouveau_prime.c
index 1fefc93af1d7..ad5eaf70c8e2 100644
--- a/drivers/gpu/drm/nouveau/nouveau_prime.c
+++ b/drivers/gpu/drm/nouveau/nouveau_prime.c
@@ -76,6 +76,12 @@ struct drm_gem_object 
*nouveau_gem_prime_import_sg_table(struct drm_device *dev,
                return ERR_PTR(ret);
 
        nvbo->valid_domains = NOUVEAU_GEM_DOMAIN_GART;
+       /* pin imported buffer to GTT */
+       ret = nouveau_bo_pin(nvbo, TTM_PL_FLAG_TT, false);
+       if (ret) {
+               nouveau_bo_ref(NULL, &nvbo);
+               return ERR_PTR(ret);
+       }
 
        /* Initialize the embedded gem-object. We return a single gem-reference
         * to the caller, instead of a normal nouveau_bo ttm reference. */
-- 
2.11.0

_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau

Reply via email to