lkml.org 
[lkml]   [2018]   [Oct]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [workqueue/driver-core PATCH 1/5] workqueue: Provide queue_work_near to queue work near a given NUMA node
From
Date


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

\
 
 \ /
  Last update: 2018-10-10 17:34    [W:1.560 / U:0.272 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site