Re: [PATCH v9 0/7] Make cpuid <-> nodeid mapping persistent

From: Andrew Morton
Date: Mon Jul 25 2016 - 20:25:56 EST


On Mon, 25 Jul 2016 20:11:51 -0400 Tejun Heo <tj@xxxxxxxxxx> wrote:

> Hello, Andrew.
>
> On Mon, Jul 25, 2016 at 04:20:22PM -0700, Andrew Morton wrote:
> > > When a pool workqueue is initialized, if its cpumask belongs to a node, its
> > > pool->node will be mapped to that node. And memory used by this workqueue will
> > > also be allocated on that node.
> >
> > Plan B is to hunt down and fix up all the workqueue structures at
> > hotplug-time. Has that option been evaluated?
> >
> > Your fix is x86-only and this bug presumably affects other
> > architectures, yes? I think a "Plan B" would fix all architectures?
>
> Yeah, that was one of the early approaches. The issue isn't limited
> to wq. Any memory allocation can have similar issues of underlying
> node association changing and we don't have any synchronization
> mechanism around it. It doesn't make any sense to make NUMA
> association dynamic when the consumer surface is vastly larger and
> there's nothing inherently dynamic about the association itself.

And other architectures?