From a868c2920bf1f85858bf389ab182ef2f07d33e1b Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Mon, 30 Nov 2020 15:30:22 +0100 Subject: [PATCH] MINOR: task: remove tasklet_insert_into_tasklet_list() This function is only called at a single place and adds more confusion than it removes. It also makes one think it could be used outside of the scheduler while it must absolutely not. Let's just move its two lines to the call place, making the code more readable there. In addition this clearly shows that the preliminary LIST_INIT() is useless since the entry is immediately overwritten. --- include/haproxy/task.h | 9 --------- src/task.c | 7 +++---- 2 files changed, 3 insertions(+), 13 deletions(-) diff --git a/include/haproxy/task.h b/include/haproxy/task.h index 41885c2fc..e4c93fc4a 100644 --- a/include/haproxy/task.h +++ b/include/haproxy/task.h @@ -369,15 +369,6 @@ static inline void tasklet_wakeup(struct tasklet *tl) tasklet_wakeup_on(tl, tl->tid); } -/* Insert a tasklet into the tasklet list. If used with a plain task instead, - * the caller must update the task_list_size. - */ -static inline void tasklet_insert_into_tasklet_list(struct list *list, struct tasklet *tl) -{ - _HA_ATOMIC_ADD(&tasks_run_queue, 1); - LIST_ADDQ(list, &tl->list); -} - /* Remove the tasklet from the tasklet list. The tasklet MUST already be there. * If unsure, use tasklet_remove_from_tasklet_list() instead. If used with a * plain task, the caller must update the task_list_size. diff --git a/src/task.c b/src/task.c index 325fd2e86..8d574216f 100644 --- a/src/task.c +++ b/src/task.c @@ -660,10 +660,9 @@ void process_runnable_tasks() } #endif - /* Make sure the entry doesn't appear to be in a list */ - LIST_INIT(&((struct tasklet *)t)->list); - /* And add it to the local task list */ - tasklet_insert_into_tasklet_list(&tt->tasklets[TL_NORMAL], (struct tasklet *)t); + /* Add it to the local task list */ + LIST_ADDQ(&tt->tasklets[TL_NORMAL], &((struct tasklet *)t)->list); + _HA_ATOMIC_ADD(&tasks_run_queue, 1); tt->tl_class_mask |= 1 << TL_NORMAL; _HA_ATOMIC_ADD(&tt->task_list_size, 1); activity[tid].tasksw++;