Commit 3a185a33 authored by Christian König's avatar Christian König Committed by Alex Deucher

drm/amdgpu: remove the context from amdgpu_job

Signed-off-by: default avatarChristian König <christian.koenig@amd.com>
Reviewed-by: default avatarChunming Zhou <david1.zhou@amd.com>
parent 69f7dd65
...@@ -1046,7 +1046,6 @@ void amdgpu_ctx_fini(struct amdgpu_ctx *ctx); ...@@ -1046,7 +1046,6 @@ void amdgpu_ctx_fini(struct amdgpu_ctx *ctx);
struct amdgpu_ctx *amdgpu_ctx_get(struct amdgpu_fpriv *fpriv, uint32_t id); struct amdgpu_ctx *amdgpu_ctx_get(struct amdgpu_fpriv *fpriv, uint32_t id);
int amdgpu_ctx_put(struct amdgpu_ctx *ctx); int amdgpu_ctx_put(struct amdgpu_ctx *ctx);
struct amdgpu_ctx *amdgpu_ctx_get_ref(struct amdgpu_ctx *ctx);
uint64_t amdgpu_ctx_add_fence(struct amdgpu_ctx *ctx, struct amdgpu_ring *ring, uint64_t amdgpu_ctx_add_fence(struct amdgpu_ctx *ctx, struct amdgpu_ring *ring,
struct fence *fence); struct fence *fence);
...@@ -1267,7 +1266,6 @@ struct amdgpu_cs_parser { ...@@ -1267,7 +1266,6 @@ struct amdgpu_cs_parser {
struct amdgpu_job { struct amdgpu_job {
struct amd_sched_job base; struct amd_sched_job base;
struct amdgpu_device *adev; struct amdgpu_device *adev;
struct amdgpu_ctx *ctx;
struct drm_file *owner; struct drm_file *owner;
struct amdgpu_ib *ibs; struct amdgpu_ib *ibs;
uint32_t num_ibs; uint32_t num_ibs;
......
...@@ -775,7 +775,6 @@ static int amdgpu_cs_dependencies(struct amdgpu_device *adev, ...@@ -775,7 +775,6 @@ static int amdgpu_cs_dependencies(struct amdgpu_device *adev,
static int amdgpu_cs_free_job(struct amdgpu_job *sched_job) static int amdgpu_cs_free_job(struct amdgpu_job *sched_job)
{ {
int i; int i;
amdgpu_ctx_put(sched_job->ctx);
if (sched_job->ibs) if (sched_job->ibs)
for (i = 0; i < sched_job->num_ibs; i++) for (i = 0; i < sched_job->num_ibs; i++)
amdgpu_ib_free(sched_job->adev, &sched_job->ibs[i]); amdgpu_ib_free(sched_job->adev, &sched_job->ibs[i]);
...@@ -849,7 +848,6 @@ int amdgpu_cs_ioctl(struct drm_device *dev, void *data, struct drm_file *filp) ...@@ -849,7 +848,6 @@ int amdgpu_cs_ioctl(struct drm_device *dev, void *data, struct drm_file *filp)
job->ibs = parser->ibs; job->ibs = parser->ibs;
job->num_ibs = parser->num_ibs; job->num_ibs = parser->num_ibs;
job->owner = parser->filp; job->owner = parser->filp;
job->ctx = amdgpu_ctx_get_ref(parser->ctx);
mutex_init(&job->job_lock); mutex_init(&job->job_lock);
if (job->ibs[job->num_ibs - 1].user) { if (job->ibs[job->num_ibs - 1].user) {
memcpy(&job->uf, &parser->uf, memcpy(&job->uf, &parser->uf,
...@@ -867,7 +865,7 @@ int amdgpu_cs_ioctl(struct drm_device *dev, void *data, struct drm_file *filp) ...@@ -867,7 +865,7 @@ int amdgpu_cs_ioctl(struct drm_device *dev, void *data, struct drm_file *filp)
goto out; goto out;
} }
cs->out.handle = cs->out.handle =
amdgpu_ctx_add_fence(job->ctx, ring, amdgpu_ctx_add_fence(parser->ctx, ring,
&job->base.s_fence->base); &job->base.s_fence->base);
parser->ibs[parser->num_ibs - 1].sequence = cs->out.handle; parser->ibs[parser->num_ibs - 1].sequence = cs->out.handle;
......
...@@ -219,13 +219,6 @@ struct amdgpu_ctx *amdgpu_ctx_get(struct amdgpu_fpriv *fpriv, uint32_t id) ...@@ -219,13 +219,6 @@ struct amdgpu_ctx *amdgpu_ctx_get(struct amdgpu_fpriv *fpriv, uint32_t id)
return ctx; return ctx;
} }
struct amdgpu_ctx *amdgpu_ctx_get_ref(struct amdgpu_ctx *ctx)
{
if (ctx)
kref_get(&ctx->refcount);
return ctx;
}
int amdgpu_ctx_put(struct amdgpu_ctx *ctx) int amdgpu_ctx_put(struct amdgpu_ctx *ctx)
{ {
if (ctx == NULL) if (ctx == NULL)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment