• Home
  • Raw
  • Download

Lines Matching full:workqueue

2 Workqueue  title
14 is needed and the workqueue (wq) API is the most commonly used
20 queue is called workqueue and the thread is called worker.
22 While there are work items on the workqueue the worker executes the
24 there is no work item left on the workqueue the worker becomes idle.
28 Why Concurrency Managed Workqueue?
55 Concurrency Managed Workqueue (cmwq) is a reimplementation of wq with
58 * Maintain compatibility with the original workqueue API.
78 workqueue.
99 the BH execution context. A BH workqueue can be considered a convenience
103 workqueue API functions as they see fit. They can influence some
105 workqueue they are putting the work item on. These flags include
110 When a work item is queued to a workqueue, the target worker-pool is
111 determined according to the queue parameters and workqueue attributes
113 unless specifically overridden, a work item of a bound workqueue will
141 Unbound workqueue can be assigned custom attributes using
142 ``apply_workqueue_attrs()`` and workqueue will automatically create
161 ``create_*workqueue()`` functions are deprecated and scheduled for
368 An unbound workqueue groups CPUs according to its affinity scope to improve
369 cache locality. For example, if a workqueue is using the default affinity
371 boundaries. A work item queued on the workqueue will be assigned to a worker
376 Workqueue currently supports the following affinity scopes.
379 Use the scope in module parameter ``workqueue.default_affinity_scope``
400 All CPUs are put in the same group. Workqueue makes no effort to process a
404 ``workqueue.default_affinity_scope`` and a specific workqueue's affinity
407 If ``WQ_SYSFS`` is set, the workqueue will have the following affinity scope
408 related interface files under its ``/sys/devices/virtual/workqueue/WQ_NAME/``
419 item starts execution, workqueue makes a best-effort attempt to ensure
429 isolation. Strict NUMA scope can also be used to match the workqueue
436 It'd be ideal if an unbound workqueue's behavior is optimal for vast
584 better than "cache (strict)" and maximizing workqueue utilization is
588 * As there is no one option which is great for most cases, workqueue usages
593 * An unbound workqueue with strict "cpu" affinity scope behaves the same as
594 ``WQ_CPU_INTENSIVE`` per-cpu workqueue. There is no real advanage to the
595 latter and an unbound workqueue provides a lot more flexibility.
610 Use tools/workqueue/wq_dump.py to examine unbound CPU affinity
613 $ tools/workqueue/wq_dump.py
665 Workqueue CPU -> pool
667 [ workqueue \ CPU 0 1 2 3 dfl]
687 Use tools/workqueue/wq_monitor.py to monitor workqueue operations: ::
689 $ tools/workqueue/wq_monitor.py events
720 workqueue users.
737 $ echo workqueue:workqueue_queue_work > /sys/kernel/tracing/set_event
758 Workqueue guarantees that a work item cannot be re-entrant if the following
762 2. No one queues the work item to another workqueue.
776 .. kernel-doc:: include/linux/workqueue.h
778 .. kernel-doc:: kernel/workqueue.c