[PATCH 3/6] drm/amdgpu: disallow foreign BOs in the display path
Felix Kuehling
Felix.Kuehling at amd.com
Thu Jul 6 20:16:24 UTC 2017
From: Christian König <christian.koenig at amd.com>
Pinning them in other devices VRAM would obviously not work.
Signed-off-by: Christian König <christian.koenig at amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling at amd.com>
---
drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
index 3341c34..bd6b0dc 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
@@ -180,6 +180,12 @@ int amdgpu_crtc_page_flip_target(struct drm_crtc *crtc,
obj = new_amdgpu_fb->obj;
new_abo = gem_to_amdgpu_bo(obj);
+ if (amdgpu_ttm_adev(new_abo->tbo.bdev) != adev) {
+ DRM_ERROR("Foreign BOs not allowed in the display engine\n");
+ r = -EINVAL;
+ goto cleanup;
+ }
+
/* pin the new buffer */
r = amdgpu_bo_reserve(new_abo, false);
if (unlikely(r != 0)) {
--
1.9.1
More information about the amd-gfx
mailing list