From: Lai Jiangshan <laijs@cn.fujitsu.com>
To: Kevin Hilman <khilman@kernel.org>
Cc: <linux-kernel@vger.kernel.org>,
Frederic Weisbecker <fweisbec@gmail.com>,
Christoph Lameter <cl@linux.com>,
Mike Galbraith <bitbucket@online.de>,
"Paul E. McKenney" <paulmck@linux.vnet.ibm.com>,
Tejun Heo <tj@kernel.org>, Viresh Kumar <viresh.kumar@linaro.org>
Subject: Re: [PATCH 3/4] workqueue: Create low-level unbound workqueues cpumask
Date: Sat, 14 Mar 2015 15:52:49 +0800 [thread overview]
Message-ID: <5503E8D1.2030909@cn.fujitsu.com> (raw)
In-Reply-To: <7h4mpopie6.fsf@deeprootsystems.com>
On 03/14/2015 07:49 AM, Kevin Hilman wrote:
> Lai Jiangshan <laijs@cn.fujitsu.com> writes:
>
>> From: Frederic Weisbecker <fweisbec@gmail.com>
>>
>> Create a cpumask that limit the affinity of all unbound workqueues.
>> This cpumask is controlled though a file at the root of the workqueue
>> sysfs directory.
>>
>> It works on a lower-level than the per WQ_SYSFS workqueues cpumask files
>> such that the effective cpumask applied for a given unbound workqueue is
>> the intersection of /sys/devices/virtual/workqueue/$WORKQUEUE/cpumask and
>> the new /sys/devices/virtual/workqueue/cpumask_unbounds file.
>>
>> This patch implements the basic infrastructure and the read interface.
>> cpumask_unbounds is initially set to cpu_possible_mask.
>>
>> Cc: Christoph Lameter <cl@linux.com>
>> Cc: Kevin Hilman <khilman@linaro.org>
>> Cc: Lai Jiangshan <laijs@cn.fujitsu.com>
>> Cc: Mike Galbraith <bitbucket@online.de>
>> Cc: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
>> Cc: Tejun Heo <tj@kernel.org>
>> Cc: Viresh Kumar <viresh.kumar@linaro.org>
>> Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
>> Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
>
> [...]
>
>> @@ -5094,6 +5116,9 @@ static int __init init_workqueues(void)
>>
>> WARN_ON(__alignof__(struct pool_workqueue) < __alignof__(long long));
>>
>> + BUG_ON(!alloc_cpumask_var(&wq_unbound_cpumask, GFP_KERNEL));
>> + cpumask_copy(wq_unbound_cpumask, cpu_possible_mask);
>> +
>
> As I mentioned in an earlier discussion[1], I still think this could
> default too the housekeeping CPUs in the NO_HZ_FULL case:
>
> #ifdef CONFIG_NO_HZ_FULL
> cpumask_complement(wq_unbound_cpumask, tick_nohz_full_mask);
No, the default/booted wq_unbound_cpumask should be cpu_possible_mask.
> #else
> cpumask_copy(wq_unbound_cpumask, cpu_possible_mask);
> #endif
>
> But that could also be left to a future optimization as well.
>
> Kevin
>
> [1] https://lkml.org/lkml/2014/2/14/666
> .
>
next prev parent reply other threads:[~2015-03-14 7:50 UTC|newest]
Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-03-12 5:00 [PATCH 0/4] workqueue: Introduce low-level unbound wq sysfs cpumask v4 Lai Jiangshan
2015-03-12 5:00 ` [PATCH 1/4] workqueue: Reorder sysfs code Lai Jiangshan
2015-03-12 5:00 ` [PATCH 2/4] workqueue: split apply_workqueue_attrs() into 3 stages Lai Jiangshan
2015-03-12 5:00 ` [PATCH 3/4] workqueue: Create low-level unbound workqueues cpumask Lai Jiangshan
2015-03-12 17:33 ` Christoph Lameter
2015-03-13 23:49 ` Kevin Hilman
2015-03-14 0:52 ` Kevin Hilman
2015-03-14 7:52 ` Lai Jiangshan [this message]
2015-03-16 17:12 ` Kevin Hilman
2015-03-16 17:25 ` Frederic Weisbecker
2015-03-16 19:38 ` Kevin Hilman
2015-03-12 5:00 ` [PATCH 4/4] workqueue: Allow modifying low level unbound workqueue cpumask Lai Jiangshan
2015-03-12 17:42 ` Christoph Lameter
2015-03-13 1:38 ` Lai Jiangshan
2015-03-13 7:49 ` Lai Jiangshan
2015-03-12 17:49 ` [PATCH 0/4] workqueue: Introduce low-level unbound wq sysfs cpumask v4 Frederic Weisbecker
2015-03-13 6:02 ` Mike Galbraith
2015-03-18 4:40 ` [PATCH 0/4 V5] workqueue: Introduce low-level unbound wq sysfs cpumask v5 Lai Jiangshan
2015-03-18 4:40 ` [PATCH 1/4 V5] workqueue: Reorder sysfs code Lai Jiangshan
2015-03-24 15:41 ` Tejun Heo
2015-03-18 4:40 ` [PATCH 2/4 V5] workqueue: split apply_workqueue_attrs() into 3 stages Lai Jiangshan
2015-03-24 15:55 ` Tejun Heo
2015-03-18 4:40 ` [PATCH 3/4 V5] workqueue: Create low-level unbound workqueues cpumask Lai Jiangshan
2015-03-18 4:40 ` [PATCH 4/4 V5] workqueue: Allow modifying low level unbound workqueue cpumask Lai Jiangshan
2015-03-24 17:31 ` Tejun Heo
2015-03-31 7:46 ` Lai Jiangshan
2015-04-01 8:33 ` Lai Jiangshan
2015-04-01 15:52 ` Tejun Heo
2015-03-19 8:54 ` [PATCH 0/4 V5] workqueue: Introduce low-level unbound wq sysfs cpumask v5 Mike Galbraith
2015-04-02 11:14 ` [PATCH 0/4 V6] " Lai Jiangshan
2015-04-02 11:14 ` [PATCH 1/4 V6] workqueue: Reorder sysfs code Lai Jiangshan
2015-04-06 15:22 ` Tejun Heo
2015-04-02 11:14 ` [PATCH 2/4 V6] workqueue: split apply_workqueue_attrs() into 3 stages Lai Jiangshan
2015-04-06 15:39 ` Tejun Heo
2015-04-02 11:14 ` [PATCH 3/4 V6] workqueue: Create low-level unbound workqueues cpumask Lai Jiangshan
2015-04-02 11:14 ` [PATCH 4/4 V6] workqueue: Allow modifying low level unbound workqueue cpumask Lai Jiangshan
2015-04-06 15:53 ` Tejun Heo
2015-04-07 1:25 ` Lai Jiangshan
2015-04-07 1:58 ` Tejun Heo
2015-04-07 2:33 ` Lai Jiangshan
2015-04-07 11:26 ` [PATCH 1/3 V7] workqueue: split apply_workqueue_attrs() into 3 stages Lai Jiangshan
2015-04-07 11:26 ` [PATCH 2/3 V7] workqueue: Create low-level unbound workqueues cpumask Lai Jiangshan
2015-04-07 11:26 ` [PATCH 3/3 V7] workqueue: Allow modifying low level unbound workqueue cpumask Lai Jiangshan
2015-04-22 19:39 ` Tejun Heo
2015-04-22 23:02 ` Frederic Weisbecker
2015-04-23 6:29 ` Mike Galbraith
2015-04-17 14:57 ` [PATCH 1/3 V7] workqueue: split apply_workqueue_attrs() into 3 stages Tejun Heo
2015-04-20 3:21 ` Lai Jiangshan
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=5503E8D1.2030909@cn.fujitsu.com \
--to=laijs@cn.fujitsu.com \
--cc=bitbucket@online.de \
--cc=cl@linux.com \
--cc=fweisbec@gmail.com \
--cc=khilman@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=paulmck@linux.vnet.ibm.com \
--cc=tj@kernel.org \
--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.