git: kernel - Update taskq code

Matthew Dillon dillon at
Sat Jan 4 12:03:01 PST 2020

commit 0d7b60da0b60fc746644971ae1e14e483a7d8504
Author: Matthew Dillon <dillon at>
Date:   Sat Jan 4 11:51:58 2020 -0800

    kernel - Update taskq code
    * Move the task_queue declaration out of struct timeout_task and
      into struct task.
      Generally speaking we want to transition to using the stored
      queue instead of requiring it to be passed in every API call,
      but we maintain API compatibility for now.
    * Assert that the stored queue matches the passed-in queue
      in several places.
    * Add taskqueue_enqueue_optq(), an API function that allows the
      queue a task is placed on to be changed.  For example, when a
      pcpu queue is passed-in.
      If the task cannot be moved to the passed-in queue it will remain
      on its current queue, otherwise it will be moved/added to the
      passed-in queue.  The queue the task is placed on is returned in
      an indirect rgument.
    * Add taskqueue_cancel_simple() and taskqueue_drain_simple().
      These functions just take the task as an argument, the
      queue does not need to be specified.

Summary of changes:
 sys/kern/subr_taskqueue.c | 131 ++++++++++++++++++++++++++++++++++++++++++++--
 sys/sys/taskqueue.h       |  10 +++-
 2 files changed, 134 insertions(+), 7 deletions(-)

DragonFly BSD source repository

More information about the Commits mailing list