diff options
author | Christian König <christian.koenig@amd.com> | 2015-08-10 08:16:24 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2015-08-17 16:51:16 -0400 |
commit | 5b232c2a717684d0dffc27e50bf05e1fb72f9d6e (patch) | |
tree | 04272ed6345824be54840a057e4c7acc0f146940 | |
parent | 05caae8515e12073f4a3beb048e0d289cbe687b7 (diff) |
drm/amdgpu: remove scheduler fence list v2
Unused and missing proper locking.
v2: add locking comment to commit message.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Chunming Zhou <david1.zhou@amd.com> (v1)
-rw-r--r-- | drivers/gpu/drm/amd/scheduler/gpu_scheduler.c | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/scheduler/gpu_scheduler.h | 2 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/scheduler/sched_fence.c | 19 |
3 files changed, 1 insertions, 21 deletions
diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c index 90abefed86cc..39577f6c0241 100644 --- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c +++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.c | |||
@@ -195,7 +195,6 @@ int amd_sched_entity_init(struct amd_gpu_scheduler *sched, | |||
195 | entity->fence_context = fence_context_alloc(1); | 195 | entity->fence_context = fence_context_alloc(1); |
196 | snprintf(name, sizeof(name), "c_entity[%llu]", entity->fence_context); | 196 | snprintf(name, sizeof(name), "c_entity[%llu]", entity->fence_context); |
197 | memcpy(entity->name, name, 20); | 197 | memcpy(entity->name, name, 20); |
198 | INIT_LIST_HEAD(&entity->fence_list); | ||
199 | if(kfifo_alloc(&entity->job_queue, | 198 | if(kfifo_alloc(&entity->job_queue, |
200 | jobs * sizeof(void *), | 199 | jobs * sizeof(void *), |
201 | GFP_KERNEL)) | 200 | GFP_KERNEL)) |
diff --git a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h index aa942033d4b3..5e35018ad7b8 100644 --- a/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h +++ b/drivers/gpu/drm/amd/scheduler/gpu_scheduler.h | |||
@@ -53,7 +53,6 @@ struct amd_sched_entity { | |||
53 | wait_queue_head_t wait_emit; | 53 | wait_queue_head_t wait_emit; |
54 | bool is_pending; | 54 | bool is_pending; |
55 | uint64_t fence_context; | 55 | uint64_t fence_context; |
56 | struct list_head fence_list; | ||
57 | char name[20]; | 56 | char name[20]; |
58 | }; | 57 | }; |
59 | 58 | ||
@@ -78,7 +77,6 @@ struct amd_run_queue { | |||
78 | struct amd_sched_fence { | 77 | struct amd_sched_fence { |
79 | struct fence base; | 78 | struct fence base; |
80 | struct fence_cb cb; | 79 | struct fence_cb cb; |
81 | struct list_head list; | ||
82 | struct amd_sched_entity *entity; | 80 | struct amd_sched_entity *entity; |
83 | uint64_t v_seq; | 81 | uint64_t v_seq; |
84 | spinlock_t lock; | 82 | spinlock_t lock; |
diff --git a/drivers/gpu/drm/amd/scheduler/sched_fence.c b/drivers/gpu/drm/amd/scheduler/sched_fence.c index 8ee77ed3a2cc..a4751598c0b4 100644 --- a/drivers/gpu/drm/amd/scheduler/sched_fence.c +++ b/drivers/gpu/drm/amd/scheduler/sched_fence.c | |||
@@ -27,16 +27,7 @@ | |||
27 | #include <drm/drmP.h> | 27 | #include <drm/drmP.h> |
28 | #include "gpu_scheduler.h" | 28 | #include "gpu_scheduler.h" |
29 | 29 | ||
30 | static void amd_sched_fence_wait_cb(struct fence *f, struct fence_cb *cb) | 30 | struct amd_sched_fence *amd_sched_fence_create(struct amd_sched_entity *s_entity) |
31 | { | ||
32 | struct amd_sched_fence *fence = | ||
33 | container_of(cb, struct amd_sched_fence, cb); | ||
34 | list_del_init(&fence->list); | ||
35 | fence_put(&fence->base); | ||
36 | } | ||
37 | |||
38 | struct amd_sched_fence *amd_sched_fence_create( | ||
39 | struct amd_sched_entity *s_entity) | ||
40 | { | 31 | { |
41 | struct amd_sched_fence *fence = NULL; | 32 | struct amd_sched_fence *fence = NULL; |
42 | fence = kzalloc(sizeof(struct amd_sched_fence), GFP_KERNEL); | 33 | fence = kzalloc(sizeof(struct amd_sched_fence), GFP_KERNEL); |
@@ -49,14 +40,6 @@ struct amd_sched_fence *amd_sched_fence_create( | |||
49 | &fence->lock, | 40 | &fence->lock, |
50 | s_entity->fence_context, | 41 | s_entity->fence_context, |
51 | fence->v_seq); | 42 | fence->v_seq); |
52 | fence_get(&fence->base); | ||
53 | list_add_tail(&fence->list, &s_entity->fence_list); | ||
54 | if (fence_add_callback(&fence->base,&fence->cb, | ||
55 | amd_sched_fence_wait_cb)) { | ||
56 | fence_put(&fence->base); | ||
57 | kfree(fence); | ||
58 | return NULL; | ||
59 | } | ||
60 | return fence; | 43 | return fence; |
61 | } | 44 | } |
62 | 45 | ||