This patch provides generic discontiguous memory support for the i386 numa architecture. The patch also provides supports for the ia32 IBM NUMA-Q hardware platform. John Stultz also has added support for the x440 hardware. This will be posted separately at a later date. A version of this patch is in the 2.4 aa tree and has also been accepted into the v2.5 tree starting with 2.5.34. This patch depends on the paddr->pfn patch that I just sent out. Assumptions made: - that the first node has at least 900Mb of memory Testing done: - single proc desktop pc (CONFIG_X86_NUMAQ is not set) - 4 proc SMP system (CONFIG_X86_NUMAQ is not set) - 4 proc SMP system (CONFIG_X86_NUMAQ is not set, CONFIG_HIGHMEM=64GB) - 16 proc NUMA box with 4GB memory (CONFIG_X86_NUMAQ=y, CONFIG_NUMA is not set) - 16 proc NUMA box with 4GB memory (CONFIG_X86_NUMAQ=y, CONFIG_NUMA is not set, CONFIG_HIGHMEM=64GB) - 16 proc NUMA box with 4GB memory (CONFIG_X86_NUMAQ=y, CONFIG_NUMA=y) - 16 proc NUMA box with 4GB memory (CONFIG_X86_NUMAQ=y, CONFIG_NUMA=y, CONFIG_HIGHMEM=64GB) - 8 proc NUMA box with 8GB memeory (CONFIG_X86_NUMAQ=y, CONFIG_NUMA=y, CONFIG_HIGHMEM=64GB) - 16 proc NUMA box with 16GB memory (CONFIG_X86_NUMAQ=y, CONFIG_NUMA=y, CONFIG_HIGHMEM=64GB) Any and all feedback regarding this patch is greatly appreciated. Thanks, Pat -- Patricia Gaughen (gone@us.ibm.com) IBM Linux Technology Center http://www.ibm.com/linux/ltc/