From 3ca7bcc0edd0f26c33264d32e7b6f07276e72e3c Mon Sep 17 00:00:00 2001 From: Garrett D'Amore Date: Sat, 7 Dec 2024 19:32:40 -0800 Subject: aio: task_abort was a mistake The use of task_abort to prematurely fail an aio at scheduling time was a mistake, because it could have led to duplicate calls to nng_aio_finish(). We do need to ensure that we leave an indicator so that nni_aio_schedule can return the abort status to caller, in the case that abort is called between the nni_aio_begin and nni_aio_schedule calls. --- src/core/taskq.c | 14 -------------- 1 file changed, 14 deletions(-) (limited to 'src/core/taskq.c') diff --git a/src/core/taskq.c b/src/core/taskq.c index 1f0ae1b6..53252a8e 100644 --- a/src/core/taskq.c +++ b/src/core/taskq.c @@ -198,20 +198,6 @@ nni_task_prep(nni_task *task) nni_mtx_unlock(&task->task_mtx); } -void -nni_task_abort(nni_task *task) -{ - // This is called when unscheduling the task. - nni_mtx_lock(&task->task_mtx); - if (task->task_prep) { - task->task_prep = false; - task->task_busy--; - if (task->task_busy == 0) { - nni_cv_wake(&task->task_cv); - } - } - nni_mtx_unlock(&task->task_mtx); -} void nni_task_wait(nni_task *task) { -- cgit v1.2.3-70-g09d2