No, one node descriptor per contiguous block on the physical node.
So this setup:
node 0: 0-2G, 4-6G
node 1: 2-4G, 6-8G
would have 4 pgdats.
I do not quite understand. Holes are not the problem - the overlapping
is.
The current bootmem allocator for example might pass the same pfn twice
to the buddy allocator when two nodes overlap. And I don't know if
other mm code has the same problem.
Hannes
--