mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 02:50:49 +09:00
video: rockchip: rga3: fix 'Use of memory after it is freed' with rga_job
Signed-off-by: Yu Qiaowei <cerf.yu@rock-chips.com> Change-Id: I9685372fafd84dcb8528f20eeac944ae8c31241c
This commit is contained in:
@@ -44,13 +44,13 @@ static void rga_job_get(struct rga_job *job)
|
||||
|
||||
static int rga_job_cleanup(struct rga_job *job)
|
||||
{
|
||||
rga_job_put(job);
|
||||
|
||||
if (DEBUGGER_EN(TIME))
|
||||
pr_info("request[%d], job cleanup total cost time %lld us\n",
|
||||
job->request_id,
|
||||
ktime_us_delta(ktime_get(), job->timestamp));
|
||||
|
||||
rga_job_put(job);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -234,15 +234,14 @@ next_job:
|
||||
pr_err("some error on rga_job_run before hw start, %s(%d)\n", __func__, __LINE__);
|
||||
|
||||
spin_lock_irqsave(&scheduler->irq_lock, flags);
|
||||
|
||||
scheduler->running_job = NULL;
|
||||
rga_job_put(job);
|
||||
|
||||
spin_unlock_irqrestore(&scheduler->irq_lock, flags);
|
||||
|
||||
job->ret = ret;
|
||||
rga_request_release_signal(scheduler, job);
|
||||
|
||||
rga_job_put(job);
|
||||
|
||||
goto next_job;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user