aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/1417-drm-amdgpu-Do-all-BO-and-page-table-pinning-inside-m.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/1417-drm-amdgpu-Do-all-BO-and-page-table-pinning-inside-m.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/1417-drm-amdgpu-Do-all-BO-and-page-table-pinning-inside-m.patch102
1 files changed, 0 insertions, 102 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/1417-drm-amdgpu-Do-all-BO-and-page-table-pinning-inside-m.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/1417-drm-amdgpu-Do-all-BO-and-page-table-pinning-inside-m.patch
deleted file mode 100644
index 9b4516a5..00000000
--- a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/1417-drm-amdgpu-Do-all-BO-and-page-table-pinning-inside-m.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-From 5c2223bc2432d5e2e4b8e913420094982801830b Mon Sep 17 00:00:00 2001
-From: Yong Zhao <yong.zhao@amd.com>
-Date: Wed, 27 Apr 2016 19:43:13 -0400
-Subject: [PATCH 1417/4131] drm/amdgpu: Do all BO and page table pinning inside
- map_bo_to_gpuvm
-
-Change-Id: Id31a04ccce15a0a15704d6bcb62572a7fa871fdf
-Signed-off-by: Yong Zhao <yong.zhao@amd.com>
----
- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 40 +++++++++---------------
- 1 file changed, 15 insertions(+), 25 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
-index db5faee..896b9df 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
-@@ -623,11 +623,22 @@ static int update_user_pages(struct kgd_mem *mem, struct mm_struct *mm,
- }
-
- static int map_bo_to_gpuvm(struct amdgpu_device *adev, struct amdgpu_bo *bo,
-- struct amdgpu_bo_va *bo_va)
-+ struct amdgpu_bo_va *bo_va, uint32_t domain)
- {
- struct amdgpu_vm *vm;
- int ret;
-
-+ /*
-+ * We need to pin the allocated BO, PD and appropriate PTs and to
-+ * create a mapping of virtual to MC address
-+ */
-+ /* Pin BO*/
-+ ret = try_pin_bo(bo, false, domain);
-+ if (ret != 0) {
-+ pr_err("amdkfd: Failed to pin BO\n");
-+ return ret;
-+ }
-+
- /* Pin PTs */
- ret = try_pin_pts(bo_va, false);
- if (ret != 0) {
-@@ -685,6 +696,7 @@ static int map_bo_to_gpuvm(struct amdgpu_device *adev, struct amdgpu_bo *bo,
- err_failed_to_pin_pd:
- unpin_pts(bo_va, vm, false);
- err_failed_to_pin_pts:
-+ unpin_bo(bo, false);
-
- return ret;
- }
-@@ -888,18 +900,8 @@ int amdgpu_amdkfd_gpuvm_map_memory_to_gpu(
-
- pr_debug("amdkfd: Trying to map VA 0x%llx to vm %p\n",
- mem->data2.va, vm);
-- /*
-- * We need to pin the allocated BO, PD and appropriate PTs and to
-- * create a mapping of virtual to MC address
-- */
-- /* Pin BO*/
-- ret = try_pin_bo(bo, false, domain);
-- if (ret != 0) {
-- pr_err("amdkfd: Failed to pin BO\n");
-- goto pin_bo_failed;
-- }
-
-- ret = map_bo_to_gpuvm(adev, bo, entry->bo_va);
-+ ret = map_bo_to_gpuvm(adev, bo, entry->bo_va, domain);
- if (ret != 0) {
- pr_err("amdkfd: Failed to map radeon bo to gpuvm\n");
- goto map_bo_to_gpuvm_failed;
-@@ -917,8 +919,6 @@ int amdgpu_amdkfd_gpuvm_map_memory_to_gpu(
- return 0;
-
- map_bo_to_gpuvm_failed:
-- unpin_bo(bo, false);
--pin_bo_failed:
- quiesce_failed:
- update_user_pages_failed:
- if (bo_va_entry_aql)
-@@ -1543,20 +1543,10 @@ int amdgpu_amdkfd_gpuvm_restore_mem(struct kgd_mem *mem, struct mm_struct *mm)
- goto resume_kfd;
- }
-
-- r = try_pin_bo(mem->data2.bo, false, domain);
-- if (unlikely(r != 0)) {
-- pr_err("Failed to pin BO\n");
-- entry->is_mapped = false;
-- if (ret == 0)
-- ret = r;
-- goto resume_kfd;
-- }
--
-- r = map_bo_to_gpuvm(adev, mem->data2.bo, entry->bo_va);
-+ r = map_bo_to_gpuvm(adev, mem->data2.bo, entry->bo_va, domain);
- if (unlikely(r != 0)) {
- pr_err("Failed to map BO to gpuvm\n");
- entry->is_mapped = false;
-- unpin_bo(mem->data2.bo, true);
- if (ret == 0)
- ret = r;
- }
---
-2.7.4
-