diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.14.71/5007-drm-amdgpu-reduce-the-number-of-placements-for-a-BO.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.14.71/5007-drm-amdgpu-reduce-the-number-of-placements-for-a-BO.patch | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.14.71/5007-drm-amdgpu-reduce-the-number-of-placements-for-a-BO.patch b/common/recipes-kernel/linux/linux-yocto-4.14.71/5007-drm-amdgpu-reduce-the-number-of-placements-for-a-BO.patch new file mode 100644 index 00000000..3b6ee3e0 --- /dev/null +++ b/common/recipes-kernel/linux/linux-yocto-4.14.71/5007-drm-amdgpu-reduce-the-number-of-placements-for-a-BO.patch @@ -0,0 +1,57 @@ +From caee5a48d469fe62e96416b75b03d9ed1fa6f695 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com> +Date: Wed, 18 Jul 2018 11:16:35 +0200 +Subject: [PATCH 5007/5725] drm/amdgpu: reduce the number of placements for a + BO +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Make struct amdgpu_bo a bit smaller. + +Signed-off-by: Christian König <christian.koenig@amd.com> +Reviewed-by: Alex Deucher <alexander.deucher@amd.com> +Signed-off-by: Alex Deucher <alexander.deucher@amd.com> +Signed-off-by: Raveendra Talabattula <raveendra.talabattula@amd.com> +--- + drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 2 ++ + drivers/gpu/drm/amd/amdgpu/amdgpu_object.h | 3 ++- + 2 files changed, 4 insertions(+), 1 deletion(-) + +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c +index e61d122..e8f43d0 100755 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c +@@ -240,6 +240,8 @@ void amdgpu_bo_placement_from_domain(struct amdgpu_bo *abo, u32 domain) + if (flags & AMDGPU_GEM_CREATE_TOP_DOWN) + places[i].flags |= TTM_PL_FLAG_TOPDOWN; + ++ BUG_ON(c >= AMDGPU_BO_MAX_PLACEMENTS); ++ + placement->num_placement = c; + placement->placement = places; + +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h +index 93c4325..ae4d06c 100755 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h +@@ -32,6 +32,7 @@ + #include "amdgpu.h" + + #define AMDGPU_BO_INVALID_OFFSET LONG_MAX ++#define AMDGPU_BO_MAX_PLACEMENTS 3 + + struct amdgpu_bo_param { + unsigned long size; +@@ -77,7 +78,7 @@ struct amdgpu_bo { + /* Protected by tbo.reserved */ + u32 preferred_domains; + u32 allowed_domains; +- struct ttm_place placements[AMDGPU_GEM_DOMAIN_MAX + 1]; ++ struct ttm_place placements[AMDGPU_BO_MAX_PLACEMENTS]; + struct ttm_placement placement; + struct ttm_buffer_object tbo; + struct ttm_bo_kmap_obj kmap; +-- +2.7.4 + |