Browse Source

workqueue: doc change for ST behavior on NUMA systems

NUMA rework of workqueue made the combination of max_active of 1 and
WQ_UNBOUND insufficient to guarantee ST behavior system wide.

alloc_ordered_queue should now be used instead.

Signed-off-by: Alexei Potashnik <alexei@purestorage.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Alexei Potashnik 8 years ago
parent
commit
0e0cafcda8
1 changed files with 7 additions and 3 deletions
  1. 7 3
      Documentation/core-api/workqueue.rst

+ 7 - 3
Documentation/core-api/workqueue.rst

@@ -243,11 +243,15 @@ throttling the number of active work items, specifying '0' is
 recommended.
 recommended.
 
 
 Some users depend on the strict execution ordering of ST wq.  The
 Some users depend on the strict execution ordering of ST wq.  The
-combination of ``@max_active`` of 1 and ``WQ_UNBOUND`` is used to
-achieve this behavior.  Work items on such wq are always queued to the
-unbound worker-pools and only one work item can be active at any given
+combination of ``@max_active`` of 1 and ``WQ_UNBOUND`` used to
+achieve this behavior.  Work items on such wq were always queued to the
+unbound worker-pools and only one work item could be active at any given
 time thus achieving the same ordering property as ST wq.
 time thus achieving the same ordering property as ST wq.
 
 
+In the current implementation the above configuration only guarantees
+ST behavior within a given NUMA node. Instead alloc_ordered_queue should
+be used to achieve system wide ST behavior.
+
 
 
 Example Execution Scenarios
 Example Execution Scenarios
 ===========================
 ===========================