All of lore.kernel.org
 help / color / mirror / Atom feed
From: Alexander Duyck <alexander.h.duyck@linux.intel.com>
To: Tejun Heo <tj@kernel.org>
Cc: gregkh@linuxfoundation.org, akpm@linux-foundation.org,
	linux-kernel@vger.kernel.org, len.brown@intel.com,
	rafael@kernel.org, linux-pm@vger.kernel.org,
	jiangshanlai@gmail.com, pavel@ucw.cz, zwisler@kernel.org
Subject: Re: [workqueue/driver-core PATCH 1/5] workqueue: Provide queue_work_near to queue work near a given NUMA node
Date: Wed, 10 Oct 2018 08:34:06 -0700	[thread overview]
Message-ID: <36fd7d36-ea79-bd69-4576-06ab4635f0d3@linux.intel.com> (raw)
In-Reply-To: <20181010153011.GM270328@devbig004.ftw2.facebook.com>



On 10/10/2018 8:30 AM, Tejun Heo wrote:
> Hello,
> 
>> +static int workqueue_select_cpu_near(int node)
>> +{
> ...
>> +	/* Use "random" otherwise know as "first" online CPU of node */
>> +	cpu = cpumask_any_and(cpumask_of_node(node), cpu_online_mask);
> 
> Maybe we wanna round-robin within the node?

I had thought about it. It adds extra complexity to do it and for 
unbound work queues it doesn't really add anything since it gets 
converted back into a node anyway.

If you wanted I could look at adding extra logic that would do the 
round-robin for non-unbound workqueues. I just wasn't sure if it was 
worth the effort since the current users are all unbound workqueues.

>> +bool queue_work_near(int node, struct workqueue_struct *wq,
>> +		     struct work_struct *work)
> 
> Can we name it queue_work_node() to stay consistent with numa-aware
> memory interface?

Yes. No problem.

> Thanks.

Thanks for the review feedback.

- Alex

  reply	other threads:[~2018-10-10 15:34 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-05 18:34 [workqueue/driver-core PATCH 0/5] Add NUMA aware async_schedule calls Alexander Duyck
2018-10-05 18:34 ` [workqueue/driver-core PATCH 1/5] workqueue: Provide queue_work_near to queue work near a given NUMA node Alexander Duyck
2018-10-10 15:30   ` Tejun Heo
2018-10-10 15:34     ` Alexander Duyck [this message]
2018-10-10 15:37       ` Tejun Heo
2018-10-05 18:34 ` [workqueue/driver-core PATCH 2/5] async: Add support for queueing on specific " Alexander Duyck
2018-10-05 18:34 ` [workqueue/driver-core PATCH 3/5] driver core: Probe devices asynchronously instead of the driver Alexander Duyck
2018-10-05 18:34 ` [workqueue/driver-core PATCH 4/5] driver core: Attach devices on CPU local to device node Alexander Duyck
2018-10-05 18:34 ` [workqueue/driver-core PATCH 5/5] PM core: Use new async_schedule_dev command Alexander Duyck

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=36fd7d36-ea79-bd69-4576-06ab4635f0d3@linux.intel.com \
    --to=alexander.h.duyck@linux.intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=jiangshanlai@gmail.com \
    --cc=len.brown@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=pavel@ucw.cz \
    --cc=rafael@kernel.org \
    --cc=tj@kernel.org \
    --cc=zwisler@kernel.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.