Russell King reports:
"With previous kernels, the nodes are added to the list in reverse order,
so architecture code knew we had to add the highest PFN first and the
lowest PFN node last.
Unfortunately, init_bootmem_core() now sorts the nodes according to
their start pfn. This active sorting broke ARM discontig memory support."
Andrew Morton chimes in:
"It looks to be bogus on ia64 as well, for which the patch was written"
Yep, I think it is bogus. There's only one caller on ia64 that would be
affected--swiotlb_init(), and afaik multi-node systems won't be using
that code (except maybe NEC?), so even if the pgdat list is out of order
we should be ok. If not I'll fix the ia64 discontig code.