Hello:<br> Recently I`m reading the scheduling schema of litmus.Now I`m concerned about the time when task_new() function in scheduler plugin is called after running release_ts for releasing a pending process using wait_for_ts_release() in its source code.<br> As far as I have read, litmus->task_new() is called in two places: 1) litmus-rt/kernel/sched/core.c line 4383 in __sched_setscheduler(); 2) litmus-rt/kernel/sched/core.c line 2611 in wake_up_new_task(). But both of them look weird to me, because 1) I don`t think arrival of a new task has or should have anything to do with switching of scheduler; 2) wake_up_new_task() is called only in litmus-rt/kernel/fork.c line 1971 in __do_fork()£¬which is also confusing, because the new task should be a process or thread itself and doesn`t have to fork a new process.<br>  Besides, another function related to new task ---- litmus-->admit_task() is called at litmus-rt/litmus/litmus.c line 358 in __litmus_admit_task(), which is called in two places too: 1) the same file line 552 in function litmus_fork(); 2)  the same file line 358 in litmus_admit_task(), which is only called at litmus-rt/kernel/sched/core.c line 4257 in __sched_setscheduler(). Similarly, the question is: why submission of new tasks needs to get into the routine of fork new process or change schduler? <br>   I`ll appreciate your reply.<br>Yours<br>Song zeceng<br><br><br>