Here's a patch to dig the PCI bus to node mapping information out of the deep, dank recesses of the EBDA tables for the Summit machines. This info is then used for the pcibus_to_cpumask() topology function. brief summary: This patch adds a new file, arch/i386/kernel/summit.c, for summit-specific code. Adds some structures to mach_mpparse.h. Also adds a hook in setup_arch() to dig out the PCI info, and stores it in the mp_bus_id_to_node[] array, where it can be read by the topology functions. As always, questions, comments, or praise (yeah, right) welcome! arch/i386/kernel/Makefile | 1 arch/i386/kernel/setup.c | 3 arch/i386/kernel/summit.c | 162 ++++++++++++++++++++++++++++ include/asm-i386/mach-summit/mach_mpparse.h | 69 +++++++++++ include/asm-i386/mpspec.h | 4 5 files changed, 239 insertions(+) Cheers! -Matt