All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tejun Heo <tj@kernel.org>
To: Frederic Weisbecker <fweisbec@gmail.com>
Cc: LKML <linux-kernel@vger.kernel.org>,
	Christoph Lameter <cl@linux.com>,
	Kevin Hilman <khilman@linaro.org>,
	Lai Jiangshan <laijs@cn.fujitsu.com>,
	Mike Galbraith <bitbucket@online.de>,
	"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>,
	Viresh Kumar <viresh.kumar@linaro.org>
Subject: Re: [PATCH 4/4] workqueue: Handle ordered workqueues on cpumask_unbounds change
Date: Thu, 24 Apr 2014 11:33:20 -0400	[thread overview]
Message-ID: <20140424153320.GF14460@htj.dyndns.org> (raw)
In-Reply-To: <1398350256-7834-5-git-send-email-fweisbec@gmail.com>

On Thu, Apr 24, 2014 at 04:37:36PM +0200, Frederic Weisbecker wrote:
> Ordered unbound workqueues need some special care if we want to
> modify their CPU affinity. These can't be simply handled through
> apply_workqueue_attrs() since it works by hot plugging worker pools
> which has parallelism side effects and this would break ordering.
> 
> The way we solve this is to change the affinity of the (presumaly
> unique) worker backing the ordered workqueues.
> 
> NOTE: Now like Lai said, there may be bad side effects on this because
> ordered wq may share their worker pool with non-ordered workqueues.
> So changing the affinity of the worker itself is not a nice solution.
> This patch is very likely to be replaced by Lai's patch
> "workqueue: allow changing attributions of ordered workqueue"
> https://lkml.org/lkml/2014/4/15/181

Yeah, it bothers me that we're taking two completely different
approaches for ordered and !ordered workqueues.  The only difference
between them is concurrency and it probably would be a better idea to
address that directly.

Thanks.

-- 
tejun

  reply	other threads:[~2014-04-24 15:33 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-24 14:37 [RFC PATCH 0/4] workqueue: Introduce low-level unbound wq sysfs cpumask Frederic Weisbecker
2014-04-24 14:37 ` [PATCH 1/4] workqueue: Create low-level unbound workqueues cpumask Frederic Weisbecker
2014-04-24 15:37   ` Tejun Heo
2014-05-01 15:01     ` Frederic Weisbecker
2014-05-01 15:02       ` Tejun Heo
2014-05-01 15:09         ` Frederic Weisbecker
2014-05-01 15:13           ` Tejun Heo
2014-04-24 22:42   ` Kevin Hilman
2014-04-24 14:37 ` [PATCH 2/4] workqueue: Split apply attrs code from its locking Frederic Weisbecker
2014-04-24 14:48   ` Tejun Heo
2014-05-01 14:40     ` Frederic Weisbecker
2014-05-01 14:41       ` Tejun Heo
2014-04-24 14:37 ` [PATCH 3/4] workqueue: Allow modifying low level unbound workqueue cpumask Frederic Weisbecker
2014-04-24 15:30   ` Tejun Heo
2014-05-01 14:49     ` Frederic Weisbecker
2014-04-24 14:37 ` [PATCH 4/4] workqueue: Handle ordered workqueues on cpumask_unbounds change Frederic Weisbecker
2014-04-24 15:33   ` Tejun Heo [this message]
2014-05-01 14:51     ` Frederic Weisbecker

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140424153320.GF14460@htj.dyndns.org \
    --to=tj@kernel.org \
    --cc=bitbucket@online.de \
    --cc=cl@linux.com \
    --cc=fweisbec@gmail.com \
    --cc=khilman@linaro.org \
    --cc=laijs@cn.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=paulmck@linux.vnet.ibm.com \
    --cc=viresh.kumar@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.