Andi Kleen wrote:
I wasn't suggesting having NULL pointers for pgdats, if that's what you
mean.
That is what started the original thread at least. Can happen on some
ia64 platforms.
OK, that does seem kind of ugly.
Just nodes with no memory in them, the pgdat would still be there.
pgdat = struct node, except everything's badly named.
Ok those can happen even on x86-64, mostly because it's possible
to fill up a node early during boot up with bootmem and then
it's effectively empty.
[there is even still a open bug when this happens on node 0]
Handling out of memory here of course has to be always done.
Yup, if we just set the "size" of the node to zero, it seems
like a natural degenerate case that should be handled anyway.
Just NULL pointers in core data structures are evil. But I'm glad we
agree here.
Now if it's better to set up a empty node or use a nearby node
for a memory less cpu can be further discussed. I still think
I lean towards the later.
Just seems kind of ugly and unnecessary, particularly if that
memory-less cpu (or IO node) is equidistant from one or more
memory-possessing nodes. As long as their zonelist is set up
correctly, it should all work fine without that, right?
build_zonelists_node already checks populated_zone() so it looks
like it's all set up for that already ...
M.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]