diff options
Diffstat (limited to 'common/recipes-kernel/linux/linux-yocto-4.14.71/1416-drm-amdkfd-BOs-should-be-unpinned-after-unmap_bo_fro.patch')
-rw-r--r-- | common/recipes-kernel/linux/linux-yocto-4.14.71/1416-drm-amdkfd-BOs-should-be-unpinned-after-unmap_bo_fro.patch | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/common/recipes-kernel/linux/linux-yocto-4.14.71/1416-drm-amdkfd-BOs-should-be-unpinned-after-unmap_bo_fro.patch b/common/recipes-kernel/linux/linux-yocto-4.14.71/1416-drm-amdkfd-BOs-should-be-unpinned-after-unmap_bo_fro.patch new file mode 100644 index 00000000..b2e2cc94 --- /dev/null +++ b/common/recipes-kernel/linux/linux-yocto-4.14.71/1416-drm-amdkfd-BOs-should-be-unpinned-after-unmap_bo_fro.patch @@ -0,0 +1,49 @@ +From 3424bc1de886b293e0741ae9f852ed7c3771b412 Mon Sep 17 00:00:00 2001 +From: Yong Zhao <yong.zhao@amd.com> +Date: Wed, 27 Apr 2016 18:10:16 -0400 +Subject: [PATCH 1416/4131] drm/amdkfd: BOs should be unpinned after + unmap_bo_from_gpuvm + +Change-Id: Iadff4cc3a3380d3de9f4fecdba7e52dfe9a92847 +Signed-off-by: Yong Zhao <yong.zhao@amd.com> +--- + drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 15 +++++++++------ + 1 file changed, 9 insertions(+), 6 deletions(-) + +diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c +index c4ef8ab..db5faee 100644 +--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c ++++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c +@@ -1122,13 +1122,7 @@ int amdgpu_amdkfd_gpuvm_unmap_memory_from_gpu( + pr_debug("unmapping BO with VA 0x%llx, size %lu bytes from GPU memory\n", + mem->data2.va, + mem->data2.bo->tbo.mem.size); +- /* Unpin the PD directory*/ +- unpin_bo(entry->bo_va->vm->page_directory, true); +- /* Unpin PTs */ +- unpin_pts(entry->bo_va, entry->bo_va->vm, true); + +- /* Unpin BO*/ +- unpin_bo(mem->data2.bo, true); + ret = unmap_bo_from_gpuvm(adev, entry->bo_va); + if (ret == 0) { + entry->is_mapped = false; +@@ -1137,6 +1131,15 @@ int amdgpu_amdkfd_gpuvm_unmap_memory_from_gpu( + mem->data2.va); + goto out; + } ++ ++ /* Unpin the PD directory*/ ++ unpin_bo(entry->bo_va->vm->page_directory, true); ++ /* Unpin PTs */ ++ unpin_pts(entry->bo_va, entry->bo_va->vm, true); ++ ++ /* Unpin BO*/ ++ unpin_bo(mem->data2.bo, true); ++ + mem->data2.mapped_to_gpu_memory--; + pr_debug("amdgpu: DEC mapping count %d\n", + mem->data2.mapped_to_gpu_memory); +-- +2.7.4 + |