Lines Matching refs:node
150 int node; /* I: the associated node ID */ member
411 list_for_each_entry((worker), &(pool)->workers, node) \
565 int node) in unbound_pwq_by_node() argument
575 if (unlikely(node == NUMA_NO_NODE)) in unbound_pwq_by_node()
578 return rcu_dereference_raw(wq->numa_pwq_tbl[node]); in unbound_pwq_by_node()
1537 static int workqueue_select_cpu_near(int node) in workqueue_select_cpu_near() argument
1546 if (node < 0 || node >= MAX_NUMNODES || !node_online(node)) in workqueue_select_cpu_near()
1551 if (node == cpu_to_node(cpu)) in workqueue_select_cpu_near()
1555 cpu = cpumask_any_and(cpumask_of_node(node), cpu_online_mask); in workqueue_select_cpu_near()
1581 bool queue_work_node(int node, struct workqueue_struct *wq, in queue_work_node() argument
1601 int cpu = workqueue_select_cpu_near(node); in queue_work_node()
1817 static struct worker *alloc_worker(int node) in alloc_worker() argument
1821 worker = kzalloc_node(sizeof(*worker), GFP_KERNEL, node); in alloc_worker()
1825 INIT_LIST_HEAD(&worker->node); in alloc_worker()
1860 list_add_tail(&worker->node, &pool->workers); in worker_attach_to_pool()
1881 list_del(&worker->node); in worker_detach_from_pool()
1918 worker = alloc_worker(pool->node); in create_worker()
1930 worker->task = kthread_create_on_node(worker_thread, worker, pool->node, in create_worker()
3422 pool->node = NUMA_NO_NODE; in init_worker_pool()
3589 int node; in get_unbound_pool() local
3604 for_each_node(node) { in get_unbound_pool()
3606 wq_numa_possible_cpumask[node])) { in get_unbound_pool()
3607 target_node = node; in get_unbound_pool()
3620 pool->node = target_node; in get_unbound_pool()
3787 pwq = kmem_cache_alloc_node(pwq_cache, GFP_KERNEL, pool->node); in alloc_unbound_pwq()
3819 static bool wq_calc_node_cpumask(const struct workqueue_attrs *attrs, int node, in wq_calc_node_cpumask() argument
3826 cpumask_and(cpumask, cpumask_of_node(node), attrs->cpumask); in wq_calc_node_cpumask()
3834 cpumask_and(cpumask, attrs->cpumask, wq_numa_possible_cpumask[node]); in wq_calc_node_cpumask()
3851 int node, in numa_pwq_tbl_install() argument
3862 old_pwq = rcu_access_pointer(wq->numa_pwq_tbl[node]); in numa_pwq_tbl_install()
3863 rcu_assign_pointer(wq->numa_pwq_tbl[node], pwq); in numa_pwq_tbl_install()
3880 int node; in apply_wqattrs_cleanup() local
3882 for_each_node(node) in apply_wqattrs_cleanup()
3883 put_pwq_unlocked(ctx->pwq_tbl[node]); in apply_wqattrs_cleanup()
3899 int node; in apply_wqattrs_prepare() local
3936 for_each_node(node) { in apply_wqattrs_prepare()
3937 if (wq_calc_node_cpumask(new_attrs, node, -1, tmp_attrs->cpumask)) { in apply_wqattrs_prepare()
3938 ctx->pwq_tbl[node] = alloc_unbound_pwq(wq, tmp_attrs); in apply_wqattrs_prepare()
3939 if (!ctx->pwq_tbl[node]) in apply_wqattrs_prepare()
3943 ctx->pwq_tbl[node] = ctx->dfl_pwq; in apply_wqattrs_prepare()
3966 int node; in apply_wqattrs_commit() local
3974 for_each_node(node) in apply_wqattrs_commit()
3975 ctx->pwq_tbl[node] = numa_pwq_tbl_install(ctx->wq, node, in apply_wqattrs_commit()
3976 ctx->pwq_tbl[node]); in apply_wqattrs_commit()
4083 int node = cpu_to_node(cpu); in wq_update_unbound_numa() local
4104 pwq = unbound_pwq_by_node(wq, node); in wq_update_unbound_numa()
4112 if (wq_calc_node_cpumask(wq->dfl_pwq->pool->attrs, node, cpu_off, cpumask)) { in wq_update_unbound_numa()
4129 old_pwq = numa_pwq_tbl_install(wq, node, pwq); in wq_update_unbound_numa()
4137 old_pwq = numa_pwq_tbl_install(wq, node, wq->dfl_pwq); in wq_update_unbound_numa()
4333 int node; in destroy_workqueue() local
4402 for_each_node(node) { in destroy_workqueue()
4403 pwq = rcu_access_pointer(wq->numa_pwq_tbl[node]); in destroy_workqueue()
4404 RCU_INIT_POINTER(wq->numa_pwq_tbl[node], NULL); in destroy_workqueue()
4633 if (pool->node != NUMA_NO_NODE) in pr_cont_pool_info()
4634 pr_cont(" node=%d", pool->node); in pr_cont_pool_info()
5391 int node, written = 0; in wq_pool_ids_show() local
5395 for_each_node(node) { in wq_pool_ids_show()
5397 "%s%d:%d", delim, node, in wq_pool_ids_show()
5398 unbound_pwq_by_node(wq, node)->pool->id); in wq_pool_ids_show()
5840 int node, cpu; in wq_numa_init() local
5861 for_each_node(node) in wq_numa_init()
5862 BUG_ON(!zalloc_cpumask_var_node(&tbl[node], GFP_KERNEL, in wq_numa_init()
5863 node_online(node) ? node : NUMA_NO_NODE)); in wq_numa_init()
5866 node = cpu_to_node(cpu); in wq_numa_init()
5867 if (WARN_ON(node == NUMA_NO_NODE)) { in wq_numa_init()
5872 cpumask_set_cpu(cpu, tbl[node]); in wq_numa_init()
5912 pool->node = cpu_to_node(cpu); in workqueue_init_early()
5990 pool->node = cpu_to_node(cpu); in workqueue_init()