aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexei Potashnik <alexei@purestorage.com>2017-07-18 14:12:53 -0400
committerTejun Heo <tj@kernel.org>2017-07-18 14:34:53 -0400
commit0e0cafcda83951bb0b438d78a4216ae94483cba6 (patch)
tree8cac8a0a29c1577cd026e45b0b39b55ec225edc0
parentbef85bd7db2669291e33c59875fae33d24c11da3 (diff)
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>
-rw-r--r--Documentation/core-api/workqueue.rst10
1 files changed, 7 insertions, 3 deletions
diff --git a/Documentation/core-api/workqueue.rst b/Documentation/core-api/workqueue.rst
index ffdec94fbca1..3943b5bfa8cf 100644
--- a/Documentation/core-api/workqueue.rst
+++ b/Documentation/core-api/workqueue.rst
@@ -243,11 +243,15 @@ throttling the number of active work items, specifying '0' is
243recommended. 243recommended.
244 244
245Some users depend on the strict execution ordering of ST wq. The 245Some users depend on the strict execution ordering of ST wq. The
246combination of ``@max_active`` of 1 and ``WQ_UNBOUND`` is used to 246combination of ``@max_active`` of 1 and ``WQ_UNBOUND`` used to
247achieve this behavior. Work items on such wq are always queued to the 247achieve this behavior. Work items on such wq were always queued to the
248unbound worker-pools and only one work item can be active at any given 248unbound worker-pools and only one work item could be active at any given
249time thus achieving the same ordering property as ST wq. 249time thus achieving the same ordering property as ST wq.
250 250
251In the current implementation the above configuration only guarantees
252ST behavior within a given NUMA node. Instead alloc_ordered_queue should
253be used to achieve system wide ST behavior.
254
251 255
252Example Execution Scenarios 256Example Execution Scenarios
253=========================== 257===========================