BUG/MEDIUM: tasks: Decrement rqueue_size at the right time.
We need to decrement requeue_size when we remove a task form rqueue_local,
not when we remove if from the task list, or we'd also decrement it for any
tasklet, that was never in the rqueue in the first place.
diff --git a/src/task.c b/src/task.c
index 86833cf..edb528a 100644
--- a/src/task.c
+++ b/src/task.c
@@ -333,6 +333,7 @@
/* detach the task from the queue */
__task_unlink_rq(t);
+ rqueue_size[tid]--;
/* And add it to the local task list */
task_insert_into_tasklet_list(t);
}
@@ -349,7 +350,6 @@
ctx = t->context;
process = t->process;
- rqueue_size[tid]--;
t->calls++;
curr_task = (struct task *)t;
if (likely(process == process_stream))