diff options
Diffstat (limited to 'common/recipes-kernel/linux/files/0701-drm-amdgpu-remove-vm-mutex.patch')
-rw-r--r-- | common/recipes-kernel/linux/files/0701-drm-amdgpu-remove-vm-mutex.patch | 160 |
1 files changed, 0 insertions, 160 deletions
diff --git a/common/recipes-kernel/linux/files/0701-drm-amdgpu-remove-vm-mutex.patch b/common/recipes-kernel/linux/files/0701-drm-amdgpu-remove-vm-mutex.patch deleted file mode 100644 index 2ebe19e3..00000000 --- a/common/recipes-kernel/linux/files/0701-drm-amdgpu-remove-vm-mutex.patch +++ /dev/null @@ -1,160 +0,0 @@ -From e98c1b0de6fe73f488df62d83d83f377b1b6e2b8 Mon Sep 17 00:00:00 2001 -From: Chunming Zhou <David1.Zhou@amd.com> -Date: Fri, 13 Nov 2015 15:22:04 +0800 -Subject: [PATCH 0701/1565] drm/amdgpu: remove vm->mutex -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Chunming Zhou <David1.Zhou@amd.com> -Reviewed-by: Christian König <christian.koenig@amd.com> ---- - drivers/gpu/drm/amd/amdgpu/amdgpu.h | 2 -- - drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 4 ---- - drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 14 ++------------ - drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 2 -- - 4 files changed, 2 insertions(+), 20 deletions(-) - -diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h -index 50672bb..251b147 100644 ---- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h -+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h -@@ -929,8 +929,6 @@ struct amdgpu_vm_id { - }; - - struct amdgpu_vm { -- struct mutex mutex; -- - struct rb_root va; - - /* protecting invalidated */ -diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c -index 3afcf02..1d44d50 100644 ---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c -+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c -@@ -784,8 +784,6 @@ int amdgpu_cs_ioctl(struct drm_device *dev, void *data, struct drm_file *filp) - { - struct amdgpu_device *adev = dev->dev_private; - union drm_amdgpu_cs *cs = data; -- struct amdgpu_fpriv *fpriv = filp->driver_priv; -- struct amdgpu_vm *vm = &fpriv->vm; - struct amdgpu_cs_parser parser = {}; - bool reserved_buffers = false; - int i, r; -@@ -803,7 +801,6 @@ int amdgpu_cs_ioctl(struct drm_device *dev, void *data, struct drm_file *filp) - r = amdgpu_cs_handle_lockup(adev, r); - return r; - } -- mutex_lock(&vm->mutex); - r = amdgpu_cs_parser_relocs(&parser); - if (r == -ENOMEM) - DRM_ERROR("Not enough memory for command submission!\n"); -@@ -888,7 +885,6 @@ int amdgpu_cs_ioctl(struct drm_device *dev, void *data, struct drm_file *filp) - - out: - amdgpu_cs_parser_fini(&parser, r, reserved_buffers); -- mutex_unlock(&vm->mutex); - r = amdgpu_cs_handle_lockup(adev, r); - return r; - } -diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c -index 00c5b58..fc32fc0 100644 ---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c -+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c -@@ -115,12 +115,9 @@ int amdgpu_gem_object_open(struct drm_gem_object *obj, struct drm_file *file_pri - struct amdgpu_vm *vm = &fpriv->vm; - struct amdgpu_bo_va *bo_va; - int r; -- mutex_lock(&vm->mutex); - r = amdgpu_bo_reserve(rbo, false); -- if (r) { -- mutex_unlock(&vm->mutex); -+ if (r) - return r; -- } - - bo_va = amdgpu_vm_bo_find(vm, rbo); - if (!bo_va) { -@@ -129,7 +126,6 @@ int amdgpu_gem_object_open(struct drm_gem_object *obj, struct drm_file *file_pri - ++bo_va->ref_count; - } - amdgpu_bo_unreserve(rbo); -- mutex_unlock(&vm->mutex); - return 0; - } - -@@ -142,10 +138,8 @@ void amdgpu_gem_object_close(struct drm_gem_object *obj, - struct amdgpu_vm *vm = &fpriv->vm; - struct amdgpu_bo_va *bo_va; - int r; -- mutex_lock(&vm->mutex); - r = amdgpu_bo_reserve(rbo, true); - if (r) { -- mutex_unlock(&vm->mutex); - dev_err(adev->dev, "leaking bo va because " - "we fail to reserve bo (%d)\n", r); - return; -@@ -157,7 +151,6 @@ void amdgpu_gem_object_close(struct drm_gem_object *obj, - } - } - amdgpu_bo_unreserve(rbo); -- mutex_unlock(&vm->mutex); - } - - static int amdgpu_gem_handle_lockup(struct amdgpu_device *adev, int r) -@@ -553,7 +546,6 @@ int amdgpu_gem_va_ioctl(struct drm_device *dev, void *data, - gobj = drm_gem_object_lookup(dev, filp, args->handle); - if (gobj == NULL) - return -ENOENT; -- mutex_lock(&fpriv->vm.mutex); - rbo = gem_to_amdgpu_bo(gobj); - INIT_LIST_HEAD(&list); - INIT_LIST_HEAD(&duplicates); -@@ -568,7 +560,6 @@ int amdgpu_gem_va_ioctl(struct drm_device *dev, void *data, - } - r = ttm_eu_reserve_buffers(&ticket, &list, true, &duplicates); - if (r) { -- mutex_unlock(&fpriv->vm.mutex); - drm_gem_object_unreference_unlocked(gobj); - return r; - } -@@ -577,7 +568,6 @@ int amdgpu_gem_va_ioctl(struct drm_device *dev, void *data, - if (!bo_va) { - ttm_eu_backoff_reservation(&ticket, &list); - drm_gem_object_unreference_unlocked(gobj); -- mutex_unlock(&fpriv->vm.mutex); - return -ENOENT; - } - -@@ -602,7 +592,7 @@ int amdgpu_gem_va_ioctl(struct drm_device *dev, void *data, - ttm_eu_backoff_reservation(&ticket, &list); - if (!r && !(args->flags & AMDGPU_VM_DELAY_UPDATE)) - amdgpu_gem_va_update_vm(adev, bo_va, args->operation); -- mutex_unlock(&fpriv->vm.mutex); -+ - drm_gem_object_unreference_unlocked(gobj); - return r; - } -diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c -index d6904ef..ae037e5 100644 ---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c -+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c -@@ -1241,7 +1241,6 @@ int amdgpu_vm_init(struct amdgpu_device *adev, struct amdgpu_vm *vm) - vm->ids[i].id = 0; - vm->ids[i].flushed_updates = NULL; - } -- mutex_init(&vm->mutex); - vm->va = RB_ROOT; - spin_lock_init(&vm->status_lock); - INIT_LIST_HEAD(&vm->invalidated); -@@ -1325,7 +1324,6 @@ void amdgpu_vm_fini(struct amdgpu_device *adev, struct amdgpu_vm *vm) - fence_put(vm->ids[i].flushed_updates); - } - -- mutex_destroy(&vm->mutex); - } - - /** --- -1.9.1 - |