[lkml]   [2016]   [Feb]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Subject[PATCHSET] workqueue: break local execution guarantee of unbound work items

Workqueue used to implicitly guarantee local execution of unbound work
items. Recent timer updates broke that for delayed work items and the
attempt to restore it ended up causing more harm than good. It has
been decided to take the chance and officially break it.

This patchset reverts 874bbfe600a6 ("workqueue: make sure delayed work
run in local cpu"), expands wq_unbound_cpu_mask so that it also
applies to unbound work items queued on percpu workqueues, and
implements a debug feature which forces wq_unbound_cpu_mask based
round-robin selection to flush out usages which depend on the local
execution guarantee.

I'll push the patchset through wq/for-4.5-fixes soon.

The patchset contains the following three patches.


and available in the following git branch.

git:// review-rr_cpu

Documentation/kernel-parameters.txt | 11 ++++++
kernel/workqueue.c | 61 ++++++++++++++++++++++++++++++++----
lib/Kconfig.debug | 15 ++++++++
3 files changed, 81 insertions(+), 6 deletions(-)



 \ /
  Last update: 2016-02-10 00:21    [W:0.071 / U:1.748 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site