summaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorscottl <scottl@FreeBSD.org>2004-01-02 07:23:40 +0000
committerscottl <scottl@FreeBSD.org>2004-01-02 07:23:40 +0000
commit44def18522cd871d244dd6d2d418780c9df5f907 (patch)
tree0399599f9a663a5291df1c600b5ef77c9cb3b59f /share
parenta865e3fa480a4197c657cb6654223823ba600a9f (diff)
downloadFreeBSD-src-44def18522cd871d244dd6d2d418780c9df5f907.zip
FreeBSD-src-44def18522cd871d244dd6d2d418780c9df5f907.tar.gz
Document taskqueue_enqueue_fast()
Diffstat (limited to 'share')
-rw-r--r--share/man/man9/taskqueue.910
1 files changed, 10 insertions, 0 deletions
diff --git a/share/man/man9/taskqueue.9 b/share/man/man9/taskqueue.9
index ccb194f..e7d6b82 100644
--- a/share/man/man9/taskqueue.9
+++ b/share/man/man9/taskqueue.9
@@ -62,6 +62,8 @@ struct task {
.Fn taskqueue_find "const char *name"
.Ft int
.Fn taskqueue_enqueue "struct taskqueue *queue" "struct task *task"
+.Ft int
+.Fn taskqueue_enqueue_fast "struct taskqueue *queue" "struct task *task"
.Ft void
.Fn taskqueue_run "struct taskqueue *queue"
.Fn TASK_INIT "struct task *task" "int priority" "task_fn_t *func" "void *context"
@@ -119,6 +121,14 @@ This function will return
.Er EPIPE
if the queue is being freed.
.Pp
+The function
+.Fn taskqueue_enqueue_fast
+should be used in place of
+.Fn taskqueue_enqueue
+when the enqueuing must happen from a fast interrupt handler.
+This method uses spin locks to avoid the possibility of sleeping in the fast
+interrupt context.
+.Pp
To execute all the tasks on a queue,
call
.Fn taskqueue_run .
OpenPOWER on IntegriCloud