diff --git a/doc/internals/api/scheduler.txt b/doc/internals/api/scheduler.txt index dd1ad5f07c..70230d1630 100644 --- a/doc/internals/api/scheduler.txt +++ b/doc/internals/api/scheduler.txt @@ -103,6 +103,17 @@ void tasklet_wakeup(tl) least once. The tasklet will run on its assigned thread, or on any thread if its TID is negative. +struct list *tasklet_wakeup_after(head, tl) + Schedule tasklet to run immediately the current one if is + NULL, or after the last queued one if is non-null. The new head + is returned, to be passed to the next call. The purpose here is to + permit instant wakeups of resumed tasklets that still preserve + ordering between them. A typical use case is for a mux' I/O handler to + instantly wake up a series of urgent streams before continuing with + already queued tasklets. This may induce extra latencies for pending + jobs and must only be used extremely carefully when it's certain that + the processing will benefit from using fresh data from the L1 cache. + void tasklet_wakeup_on(tl, thr) Make sure that tasklet will wake up on thread , that is, will execute at least once. The designated thread may only differ from the