Lines Matching full:workqueue

3  * workqueue.h --- work queue handling for Linux.
35 /* color for workqueue flushing */
42 * bytes w/ DEBUG_OBJECTS_WORK) and allows 16 workqueue flush colors.
117 /* target workqueue and CPU ->timer uses to queue ->work */
126 /* target workqueue ->rcu uses to queue ->work */
142 * struct workqueue_attrs - A struct for workqueue attributes.
144 * This can be used to change attributes of an unbound workqueue.
155 * Work items in this workqueue are affine to these CPUs and not allowed
156 * to execute on other CPUs. A pool serving a workqueue must have the
167 * subset of ->cpumask. A workqueue can be associated with multiple
176 * If clear, workqueue will make a best-effort attempt at starting the
200 * selecting %WQ_AFFN_NUMA makes the workqueue use a separate worker
366 * Workqueue flags and constants. For details, please refer to
367 * Documentation/core-api/workqueue.rst.
375 WQ_CPU_INTENSIVE = 1 << 5, /* cpu intensive workqueue */
394 * but become unbound if workqueue.power_efficient kernel param is
405 __WQ_DESTROYING = 1 << 15, /* internal: workqueue is destroying */
406 __WQ_DRAINING = 1 << 16, /* internal: workqueue is draining */
407 __WQ_ORDERED = 1 << 17, /* internal: workqueue is ordered */
441 * system_unbound_wq is unbound workqueue. Workers are not bound to
472 * alloc_workqueue - allocate a workqueue
473 * @fmt: printf format for the name of the workqueue
478 * For a per-cpu workqueue, @max_active limits the number of in-flight work
480 * executing at most one work item for the workqueue.
484 * at most 16 work items executing for the workqueue in the whole system.
486 * As sharing the same active counter for an unbound workqueue across multiple
494 * of interdependent work items for the workqueue.
502 * Documentation/core-api/workqueue.rst.
505 * Pointer to the allocated workqueue on success, %NULL on failure.
512 * alloc_workqueue_lockdep_map - allocate a workqueue with user-defined lockdep_map
513 * @fmt: printf format for the name of the workqueue
521 * on each workqueue creation.
524 * Pointer to the allocated workqueue on success, %NULL on failure.
531 * alloc_ordered_workqueue_lockdep_map - allocate an ordered workqueue with
534 * @fmt: printf format for the name of the workqueue
541 * lockdep_map on each workqueue creation.
544 * Pointer to the allocated workqueue on success, %NULL on failure.
552 * alloc_ordered_workqueue - allocate an ordered workqueue
553 * @fmt: printf format for the name of the workqueue
557 * Allocate an ordered workqueue. An ordered workqueue executes at
562 * Pointer to the allocated workqueue on success, %NULL on failure.
637 * queue_work - queue work on a workqueue
638 * @wq: workqueue to use
666 * queue_delayed_work - queue work on a workqueue after delay
667 * @wq: workqueue to use
682 * @wq: workqueue to use
708 * schedule_work - put work task in global workqueue
711 * Returns %false if @work was already on the kernel-global workqueue and
714 * This puts a job in the kernel-global workqueue if it was not already
716 * workqueue otherwise.
727 * enable_and_queue_work - Enable and queue a work item on a specific workqueue
728 * @wq: The target workqueue
792 * schedule_delayed_work_on - queue work in global workqueue on CPU after delay
798 * workqueue on the specified CPU.
807 * schedule_delayed_work - put work task in global workqueue after delay
812 * workqueue.