aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0503-drm-amdgpu-remove-entity-idle-timeout-v2.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0503-drm-amdgpu-remove-entity-idle-timeout-v2.patch')
-rw-r--r--common/recipes-kernel/linux/files/0503-drm-amdgpu-remove-entity-idle-timeout-v2.patch91
1 files changed, 0 insertions, 91 deletions
diff --git a/common/recipes-kernel/linux/files/0503-drm-amdgpu-remove-entity-idle-timeout-v2.patch b/common/recipes-kernel/linux/files/0503-drm-amdgpu-remove-entity-idle-timeout-v2.patch
deleted file mode 100644
index 2cab817d..00000000
--- a/common/recipes-kernel/linux/files/0503-drm-amdgpu-remove-entity-idle-timeout-v2.patch
+++ /dev/null
@@ -1,91 +0,0 @@
-From 062c7fb3ebb42d2a50d4644b3e49e731361e6951 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
-Date: Fri, 21 Aug 2015 15:46:43 +0200
-Subject: [PATCH 0503/1050] drm/amdgpu: remove entity idle timeout v2
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Removing the entity from scheduling can deadlock the whole system.
-Wait forever till the remaining IBs are scheduled.
-
-v2: fix comment as well
-
-Signed-off-by: Christian König <christian.koenig@amd.com>
-Acked-by: Alex Deucher <alexander.deucher@amd.com>
-Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com>
-Reviewed-by: Chunming Zhou <david1.zhou@amd.com> (v1)
----
- drivers/gpu/drm/amd/scheduler/gpu_scheduler.c | 18 +++++-------------
- drivers/gpu/drm/amd/scheduler/gpu_scheduler.h | 6 ++----
- 2 files changed, 7 insertions(+), 17 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
-index 2df6f17..ca22d90 100644
---- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
-+++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
-@@ -167,32 +167,24 @@ static bool amd_sched_entity_is_idle(struct amd_sched_entity *entity)
- * @sched Pointer to scheduler instance
- * @entity The pointer to a valid scheduler entity
- *
-- * return 0 if succeed. negative error code on failure
-+ * Cleanup and free the allocated resources.
- */
--int amd_sched_entity_fini(struct amd_gpu_scheduler *sched,
-- struct amd_sched_entity *entity)
-+void amd_sched_entity_fini(struct amd_gpu_scheduler *sched,
-+ struct amd_sched_entity *entity)
- {
- struct amd_sched_rq *rq = entity->belongto_rq;
-- long r;
-
- if (!amd_sched_entity_is_initialized(sched, entity))
-- return 0;
-+ return;
-
- /**
- * The client will not queue more IBs during this fini, consume existing
- * queued IBs
- */
-- r = wait_event_timeout(entity->wait_queue,
-- amd_sched_entity_is_idle(entity),
-- msecs_to_jiffies(AMD_GPU_WAIT_IDLE_TIMEOUT_IN_MS));
--
-- if (r <= 0)
-- DRM_INFO("Entity %p is in waiting state during fini\n",
-- entity);
-+ wait_event(entity->wait_queue, amd_sched_entity_is_idle(entity));
-
- amd_sched_rq_remove_entity(rq, entity);
- kfifo_free(&entity->job_queue);
-- return r;
- }
-
- /**
-diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h
-index 44909b1..128f908 100644
---- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h
-+++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h
-@@ -27,8 +27,6 @@
- #include <linux/kfifo.h>
- #include <linux/fence.h>
-
--#define AMD_GPU_WAIT_IDLE_TIMEOUT_IN_MS 3000
--
- struct amd_gpu_scheduler;
- struct amd_sched_rq;
-
-@@ -124,8 +122,8 @@ int amd_sched_entity_init(struct amd_gpu_scheduler *sched,
- struct amd_sched_entity *entity,
- struct amd_sched_rq *rq,
- uint32_t jobs);
--int amd_sched_entity_fini(struct amd_gpu_scheduler *sched,
-- struct amd_sched_entity *entity);
-+void amd_sched_entity_fini(struct amd_gpu_scheduler *sched,
-+ struct amd_sched_entity *entity);
- int amd_sched_entity_push_job(struct amd_sched_job *sched_job);
-
- struct amd_sched_fence *amd_sched_fence_create(
---
-1.9.1
-