aboutsummaryrefslogtreecommitdiffstats
path: root/common/recipes-kernel/linux/files/0432-drm-amdgpu-stop-leaking-the-ctx-id-into-the-schedule.patch
diff options
context:
space:
mode:
Diffstat (limited to 'common/recipes-kernel/linux/files/0432-drm-amdgpu-stop-leaking-the-ctx-id-into-the-schedule.patch')
-rw-r--r--common/recipes-kernel/linux/files/0432-drm-amdgpu-stop-leaking-the-ctx-id-into-the-schedule.patch141
1 files changed, 0 insertions, 141 deletions
diff --git a/common/recipes-kernel/linux/files/0432-drm-amdgpu-stop-leaking-the-ctx-id-into-the-schedule.patch b/common/recipes-kernel/linux/files/0432-drm-amdgpu-stop-leaking-the-ctx-id-into-the-schedule.patch
deleted file mode 100644
index 22497b1e..00000000
--- a/common/recipes-kernel/linux/files/0432-drm-amdgpu-stop-leaking-the-ctx-id-into-the-schedule.patch
+++ /dev/null
@@ -1,141 +0,0 @@
-From 0e89d0c16b9446a094215e71734e583c438bf83d Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
-Date: Tue, 4 Aug 2015 16:58:36 +0200
-Subject: [PATCH 0432/1050] drm/amdgpu: stop leaking the ctx id into the
- scheduler v2
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Id's are for the IOCTL ABI only.
-
-v2: remove tgid as well
-
-Signed-off-by: Christian König <christian.koenig@amd.com>
-Reviewed-by: Chunming Zhou <david1.zhou@amd.com>
----
- drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c | 11 ++++-------
- drivers/gpu/drm/amd/scheduler/gpu_scheduler.c | 10 +++-------
- drivers/gpu/drm/amd/scheduler/gpu_scheduler.h | 6 ------
- 3 files changed, 7 insertions(+), 20 deletions(-)
-
-diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
-index 3c353375b..c2290ae 100644
---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
-+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c
-@@ -50,8 +50,7 @@ static void amdgpu_ctx_do_release(struct kref *ref)
-
- static void amdgpu_ctx_init(struct amdgpu_device *adev,
- struct amdgpu_fpriv *fpriv,
-- struct amdgpu_ctx *ctx,
-- uint32_t id)
-+ struct amdgpu_ctx *ctx)
- {
- int i;
- memset(ctx, 0, sizeof(*ctx));
-@@ -81,7 +80,7 @@ int amdgpu_ctx_alloc(struct amdgpu_device *adev, struct amdgpu_fpriv *fpriv,
- return r;
- }
- *id = (uint32_t)r;
-- amdgpu_ctx_init(adev, fpriv, ctx, *id);
-+ amdgpu_ctx_init(adev, fpriv, ctx);
- mutex_unlock(&mgr->lock);
- } else {
- if (adev->kernel_ctx) {
-@@ -89,8 +88,7 @@ int amdgpu_ctx_alloc(struct amdgpu_device *adev, struct amdgpu_fpriv *fpriv,
- kfree(ctx);
- return 0;
- }
-- *id = AMD_KERNEL_CONTEXT_ID;
-- amdgpu_ctx_init(adev, fpriv, ctx, *id);
-+ amdgpu_ctx_init(adev, fpriv, ctx);
-
- adev->kernel_ctx = ctx;
- }
-@@ -105,8 +103,7 @@ int amdgpu_ctx_alloc(struct amdgpu_device *adev, struct amdgpu_fpriv *fpriv,
- rq = &adev->rings[i]->scheduler->kernel_rq;
- r = amd_context_entity_init(adev->rings[i]->scheduler,
- &ctx->rings[i].c_entity,
-- NULL, rq, *id,
-- amdgpu_sched_jobs);
-+ NULL, rq, amdgpu_sched_jobs);
- if (r)
- break;
- }
-diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
-index 4ad1825..b9aa572 100644
---- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
-+++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c
-@@ -172,7 +172,7 @@ exit:
- * @entity The pointer to a valid amd_context_entity
- * @parent The parent entity of this amd_context_entity
- * @rq The run queue this entity belongs
-- * @context_id The context id for this entity
-+ * @kernel If this is an entity for the kernel
- * @jobs The max number of jobs in the job queue
- *
- * return 0 if succeed. negative error code on failure
-@@ -181,7 +181,6 @@ int amd_context_entity_init(struct amd_gpu_scheduler *sched,
- struct amd_context_entity *entity,
- struct amd_sched_entity *parent,
- struct amd_run_queue *rq,
-- uint32_t context_id,
- uint32_t jobs)
- {
- uint64_t seq_ring = 0;
-@@ -203,9 +202,6 @@ int amd_context_entity_init(struct amd_gpu_scheduler *sched,
- return -EINVAL;
-
- spin_lock_init(&entity->queue_lock);
-- entity->tgid = (context_id == AMD_KERNEL_CONTEXT_ID) ?
-- AMD_KERNEL_PROCESS_ID : current->tgid;
-- entity->context_id = context_id;
- atomic64_set(&entity->last_emitted_v_seq, seq_ring);
- atomic64_set(&entity->last_queued_v_seq, seq_ring);
-
-@@ -275,9 +271,9 @@ int amd_context_entity_fini(struct amd_gpu_scheduler *sched,
-
- if (r) {
- if (entity->is_pending)
-- DRM_INFO("Entity %u is in waiting state during fini,\
-+ DRM_INFO("Entity %p is in waiting state during fini,\
- all pending ibs will be canceled.\n",
-- entity->context_id);
-+ entity);
- }
-
- mutex_lock(&rq->lock);
-diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h
-index fd6d699..c46d085 100644
---- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h
-+++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h
-@@ -26,9 +26,6 @@
-
- #include <linux/kfifo.h>
-
--#define AMD_KERNEL_CONTEXT_ID 0
--#define AMD_KERNEL_PROCESS_ID 0
--
- #define AMD_GPU_WAIT_IDLE_TIMEOUT_IN_MS 3000
-
- struct amd_gpu_scheduler;
-@@ -74,8 +71,6 @@ struct amd_context_entity {
- /* the virtual_seq is unique per context per ring */
- atomic64_t last_queued_v_seq;
- atomic64_t last_emitted_v_seq;
-- pid_t tgid;
-- uint32_t context_id;
- /* the job_queue maintains the jobs submitted by clients */
- struct kfifo job_queue;
- spinlock_t queue_lock;
-@@ -148,7 +143,6 @@ int amd_context_entity_init(struct amd_gpu_scheduler *sched,
- struct amd_context_entity *entity,
- struct amd_sched_entity *parent,
- struct amd_run_queue *rq,
-- uint32_t context_id,
- uint32_t jobs);
-
- void amd_sched_emit(struct amd_context_entity *c_entity, uint64_t seq);
---
-1.9.1
-