mirror of
https://github.com/nyanmisaka/mpp.git
synced 2025-11-02 13:34:04 +08:00
[vproc]: Fix reset when task still in queue
Signed-off-by: Herman Chen <herman.chen@rock-chips.com> Change-Id: Ic5d89db827024696c79ce51d1eef14d1b4ac415e
This commit is contained in:
@@ -608,12 +608,6 @@ static void *dec_vproc_thread(void *data)
|
||||
if (MPP_THREAD_RUNNING != thd->get_status())
|
||||
break;
|
||||
|
||||
if (ctx->task_wait.task_in) {
|
||||
if (ctx->reset) {
|
||||
goto RESET;
|
||||
}
|
||||
}
|
||||
|
||||
if (ctx->task_wait.val && !ctx->reset) {
|
||||
vproc_dbg_status("vproc thread wait %d", ctx->task_wait.val);
|
||||
thd->wait();
|
||||
@@ -621,6 +615,11 @@ static void *dec_vproc_thread(void *data)
|
||||
|
||||
if (!ctx->task_status.task_rdy) {
|
||||
if (hal_task_get_hnd(tasks, TASK_PROCESSING, &task)) {
|
||||
if (ctx->reset) {
|
||||
dev_vproc_reset(thd, ctx);
|
||||
continue;
|
||||
}
|
||||
|
||||
ctx->task_wait.task_in = 1;
|
||||
continue;
|
||||
}
|
||||
@@ -704,8 +703,6 @@ static void *dec_vproc_thread(void *data)
|
||||
|
||||
vproc_dbg_status("vproc task done");
|
||||
}
|
||||
RESET:
|
||||
dev_vproc_reset(thd, ctx);
|
||||
}
|
||||
mpp_dbg_info("mpp_dec_post_proc_thread exited\n");
|
||||
|
||||
|
||||
Reference in New Issue
Block a user