From: Willy Tarreau Date: Tue, 19 Nov 2024 15:04:09 +0000 (+0100) Subject: DOC: sched: add missing scheduler API documentation for tasklet_wakeup_after() X-Git-Tag: v3.1-dev14~74 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e5ca72cb6f88075cebd351dd9aff99254c443c31;p=thirdparty%2Fhaproxy.git DOC: sched: add missing scheduler API documentation for tasklet_wakeup_after() This was added to 2.6 but the doc was forgotten. Let's add it. It's not needed to backport this since it's only used for new developments. --- 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