aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0695-drm-amdgpu-move-bo_reserve-out-of-amdgpu_vm_clear_bo.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0695-drm-amdgpu-move-bo_reserve-out-of-amdgpu_vm_clear_bo.patch')
-rw-r--r--common/recipes-kernel/linux/files/0695-drm-amdgpu-move-bo_reserve-out-of-amdgpu_vm_clear_bo.patch111
1 files changed, 0 insertions, 111 deletions
diff --git a/common/recipes-kernel/linux/files/0695-drm-amdgpu-move-bo_reserve-out-of-amdgpu_vm_clear_bo.patch b/common/recipes-kernel/linux/files/0695-drm-amdgpu-move-bo_reserve-out-of-amdgpu_vm_clear_bo.patch
deleted file mode 100644
index 1ce0a042..00000000
--- a/common/recipes-kernel/linux/files/0695-drm-amdgpu-move-bo_reserve-out-of-amdgpu_vm_clear_bo.patch
+++ /dev/null
@@ -1,111 +0,0 @@
-From ef9f0a83d68cecca241ee5d61b797d598722772e Mon Sep 17 00:00:00 2001
-From: Chunming Zhou <David1.Zhou@amd.com>
-Date: Fri, 13 Nov 2015 13:43:22 +0800
-Subject: [PATCH 0695/1565] drm/amdgpu: move bo_reserve out of
- amdgpu_vm_clear_bo
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Change-Id: Ifbb0c06680494bfa04d0be5e5941d31ae2e5ef28
-Signed-off-by: Chunming Zhou <David1.Zhou@amd.com>
-Reviewed-by: Christian König <christian.koenig@amd.com>
----
- drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 33 ++++++++++++++++++---------------
- 1 file changed, 18 insertions(+), 15 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
-index 0513f3f..e6dc19b 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
-@@ -332,6 +332,8 @@ int amdgpu_vm_free_job(struct amdgpu_job *job)
- *
- * @adev: amdgpu_device pointer
- * @bo: bo to clear
-+ *
-+ * need to reserve bo first before calling it.
- */
- static int amdgpu_vm_clear_bo(struct amdgpu_device *adev,
- struct amdgpu_bo *bo)
-@@ -343,24 +345,20 @@ static int amdgpu_vm_clear_bo(struct amdgpu_device *adev,
- uint64_t addr;
- int r;
-
-- r = amdgpu_bo_reserve(bo, false);
-- if (r)
-- return r;
--
- r = reservation_object_reserve_shared(bo->tbo.resv);
- if (r)
- return r;
-
- r = ttm_bo_validate(&bo->tbo, &bo->placement, true, false);
- if (r)
-- goto error_unreserve;
-+ goto error;
-
- addr = amdgpu_bo_gpu_offset(bo);
- entries = amdgpu_bo_size(bo) / 8;
-
- ib = kzalloc(sizeof(struct amdgpu_ib), GFP_KERNEL);
- if (!ib)
-- goto error_unreserve;
-+ goto error;
-
- r = amdgpu_ib_get(ring, NULL, entries * 2 + 64, ib);
- if (r)
-@@ -378,16 +376,14 @@ static int amdgpu_vm_clear_bo(struct amdgpu_device *adev,
- if (!r)
- amdgpu_bo_fence(bo, fence, true);
- fence_put(fence);
-- if (amdgpu_enable_scheduler) {
-- amdgpu_bo_unreserve(bo);
-+ if (amdgpu_enable_scheduler)
- return 0;
-- }
-+
- error_free:
- amdgpu_ib_free(adev, ib);
- kfree(ib);
-
--error_unreserve:
-- amdgpu_bo_unreserve(bo);
-+error:
- return r;
- }
-
-@@ -1087,11 +1083,12 @@ int amdgpu_vm_bo_map(struct amdgpu_device *adev,
- AMDGPU_GEM_DOMAIN_VRAM,
- AMDGPU_GEM_CREATE_NO_CPU_ACCESS,
- NULL, resv, &pt);
-- ww_mutex_unlock(&resv->lock);
-- if (r)
-+ if (r) {
-+ ww_mutex_unlock(&resv->lock);
- goto error_free;
--
-+ }
- r = amdgpu_vm_clear_bo(adev, pt);
-+ ww_mutex_unlock(&resv->lock);
- if (r) {
- amdgpu_bo_unref(&pt);
- goto error_free;
-@@ -1280,8 +1277,14 @@ int amdgpu_vm_init(struct amdgpu_device *adev, struct amdgpu_vm *vm)
- NULL, NULL, &vm->page_directory);
- if (r)
- return r;
--
-+ r = amdgpu_bo_reserve(vm->page_directory, false);
-+ if (r) {
-+ amdgpu_bo_unref(&vm->page_directory);
-+ vm->page_directory = NULL;
-+ return r;
-+ }
- r = amdgpu_vm_clear_bo(adev, vm->page_directory);
-+ amdgpu_bo_unreserve(vm->page_directory);
- if (r) {
- amdgpu_bo_unref(&vm->page_directory);
- vm->page_directory = NULL;
---
-1.9.1
-