mirror of
https://git.FreeBSD.org/src.git
synced 2025-01-19 15:33:56 +00:00
Document taskqueue_enqueue_fast()
This commit is contained in:
parent
8da0249608
commit
24b4e9d17f
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=124066
@ -62,6 +62,8 @@ struct task {
|
|||||||
.Fn taskqueue_find "const char *name"
|
.Fn taskqueue_find "const char *name"
|
||||||
.Ft int
|
.Ft int
|
||||||
.Fn taskqueue_enqueue "struct taskqueue *queue" "struct task *task"
|
.Fn taskqueue_enqueue "struct taskqueue *queue" "struct task *task"
|
||||||
|
.Ft int
|
||||||
|
.Fn taskqueue_enqueue_fast "struct taskqueue *queue" "struct task *task"
|
||||||
.Ft void
|
.Ft void
|
||||||
.Fn taskqueue_run "struct taskqueue *queue"
|
.Fn taskqueue_run "struct taskqueue *queue"
|
||||||
.Fn TASK_INIT "struct task *task" "int priority" "task_fn_t *func" "void *context"
|
.Fn TASK_INIT "struct task *task" "int priority" "task_fn_t *func" "void *context"
|
||||||
@ -119,6 +121,14 @@ This function will return
|
|||||||
.Er EPIPE
|
.Er EPIPE
|
||||||
if the queue is being freed.
|
if the queue is being freed.
|
||||||
.Pp
|
.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,
|
To execute all the tasks on a queue,
|
||||||
call
|
call
|
||||||
.Fn taskqueue_run .
|
.Fn taskqueue_run .
|
||||||
|
Loading…
Reference in New Issue
Block a user