Thread (57 messages) 57 messages, 7 authors, 2019-10-30

Re: [PATCH v6] numa: make node_to_cpumask_map() NUMA_NO_NODE aware

From: Peter Zijlstra <peterz@infradead.org>
Date: 2019-09-26 12:27:10
Also in: linux-alpha

On Thu, Sep 26, 2019 at 01:45:53PM +0200, Geert Uytterhoeven wrote:
Hi Peter,

On Thu, Sep 26, 2019 at 11:42 AM Peter Zijlstra [off-list ref] wrote:
quoted
On Wed, Sep 25, 2019 at 03:25:44PM +0200, Michal Hocko wrote:
quoted
I am sorry but I still do not understand why you consider this whack a
mole better then simply live with the fact that NUMA_NO_NODE is a
reality and that using the full cpu mask is a reasonable answer to that.
Because it doesn't make physical sense. A device _cannot_ be local to
all CPUs in a NUMA system.
While it cannot be local to all CPUs, it can be at a uniform (equal) distance
to each CPU node, can't it?
Only in some really narrow cases; and I'm not sure those are realistic,
nor if then not providing NUMA info is the best way to describe that.

I suppose it is possible to have a PCI bridge shared between two nodes,
such that the PCI devices have equidistance; esp. if that all lives in a
package. But the moment you scale this out, you either get devices that
are 'local' to a package while having multiple packages, or if you
maintain a single bridge in a big system, things become so slow it all
doesn't matter anyway (try having a equidistant device in a 16 node
system).

I'm saying that assigning a node (one of the shared) is, in the generic
ase of multiple packages, the better solution over assigning all nodes.

The other solution is migrating the device model over to a node mask,
instead of a single node. But like said; I'm not sure anybody actually
build something like this. So I'm not sure it matters.

OTOH allowing to not describe NUMA has led to a whole host of crap,
which if we don't become stricter will only get worse.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help