From: Jens Axboe axboe@kernel.dk
commit a8b595b22d31f83b715511f59012f152a269d83b upstream.
There was an assumption that kthread_create_on_node() would properly set NUMA affinities in terms of CPUs allowed, but it doesn't. Make sure we do this when creating an io-wq context on NUMA.
Cc: stable@vger.kernel.org Stefan Metzmacher metze@samba.org Signed-off-by: Jens Axboe axboe@kernel.dk Signed-off-by: Greg Kroah-Hartman gregkh@linuxfoundation.org
--- fs/io-wq.c | 1 + 1 file changed, 1 insertion(+)
--- a/fs/io-wq.c +++ b/fs/io-wq.c @@ -654,6 +654,7 @@ static bool create_io_worker(struct io_w kfree(worker); return false; } + kthread_bind_mask(worker->task, cpumask_of_node(wqe->node));
raw_spin_lock_irq(&wqe->lock); hlist_nulls_add_head_rcu(&worker->nulls_node, &wqe->free_list);