diff options
author | Alexei Potashnik <alexei@purestorage.com> | 2017-07-18 11:12:53 -0700 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2017-07-18 14:34:53 -0400 |
commit | 0e0cafcda83951bb0b438d78a4216ae94483cba6 (patch) | |
tree | 8cac8a0a29c1577cd026e45b0b39b55ec225edc0 | |
parent | bef85bd7db2669291e33c59875fae33d24c11da3 (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.rst | 10 |
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 recommended. 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. +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 =========================== |