Re: [PATCH 3/3] x86: fix node_possible_map logic -v2

From: David Rientjes
Date: Mon May 11 2009 - 15:28:09 EST


On Mon, 11 May 2009, Jack Steiner wrote:

> Do we have a clear and unambiguous definition of what a node really is?
> In this case, is a board (socket) with cpus, a unique PXM but no memory
> considered a node. Even though it has no memory, it is a node (depending on the
> definition of "node") for purposes such as scheduling. The memoryless node also
> has local IO buses that want to direct interrupts to node-local cpus.
>

In your example of two cpus (0-1) that are remote to the system's only
memory and two cpus (2-3) that have affinity to that memory, it appears as
though the kernel is considering cpus 2-3 and the memory to be a node and
cpus 0-1 to be a memoryless node.

That's a pretty useless scenario for memoryless node support, actually,
unless there's a third node with memory that cpus 0-1 have a different
distance to. cpus 0-1 have no memory that is local, so the "remote"
memory should be considered local to them.

I don't know who has been pushing the memoryless node support, but it
appears as though it hasn't been fully tested yet. The NULL pglist_data
here for node 0 seems appropriate since you don't need it unless you're
describing memory, but the kernel implies that if a bit is set in
node_online_map or node_possible_map that it has this associated data.

Added Andi Kleen to the cc list.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/