Loading arch/x86/kernel/mpparse.c +11 −3 Original line number Diff line number Diff line Loading @@ -70,7 +70,10 @@ static void __cpuinit MP_processor_info(struct mpc_config_processor *m) return; } #ifdef CONFIG_X86_NUMAQ if (found_numaq) apicid = mpc_apic_id(m, translation_table[mpc_record]); else apicid = m->mpc_apicid; #else apicid = m->mpc_apicid; #endif Loading @@ -91,6 +94,7 @@ static void __init MP_bus_info(struct mpc_config_bus *m) str[6] = 0; #ifdef CONFIG_X86_NUMAQ if (found_numaq) mpc_oem_bus_info(m, str, translation_table[mpc_record]); #else printk(KERN_INFO "Bus #%d is %s\n", m->mpc_busid, str); Loading @@ -112,6 +116,7 @@ static void __init MP_bus_info(struct mpc_config_bus *m) #endif } else if (strncmp(str, BUSTYPE_PCI, sizeof(BUSTYPE_PCI) - 1) == 0) { #ifdef CONFIG_X86_NUMAQ if (found_numaq) mpc_oem_pci_bus(m, translation_table[mpc_record]); #endif clear_bit(m->mpc_busid, mp_bus_not_pci); Loading Loading @@ -321,6 +326,9 @@ static inline void mps_oem_check(struct mp_config_table *mpc, char *oem, { if (strncmp(oem, "IBM NUMA", 8)) printk("Warning! May not be a NUMA-Q system!\n"); else found_numaq = 1; if (mpc->mpc_oemptr) smp_read_mpc_oem((struct mp_config_oemtable *)mpc->mpc_oemptr, mpc->mpc_oemsize); Loading arch/x86/kernel/numaq_32.c +19 −5 Original line number Diff line number Diff line Loading @@ -31,9 +31,12 @@ #include <asm/numaq.h> #include <asm/topology.h> #include <asm/processor.h> #include <asm/mpspec.h> #define MB_TO_PAGES(addr) ((addr) << (20 - PAGE_SHIFT)) int found_numaq; /* * Function: smp_dump_qct() * Loading Loading @@ -67,13 +70,24 @@ static void __init smp_dump_qct(void) } } static __init void early_check_numaq(void) { /* * Find possible boot-time SMP configuration: */ early_find_smp_config(); /* * Unlike Summit, we don't really care to let the NUMA-Q * fall back to flat mode. Don't compile for NUMA-Q * unless you really need it! * get boot-time SMP configuration: */ if (smp_found_config) early_get_smp_config(); } int __init get_memcfg_numaq(void) { early_check_numaq(); if (!found_numaq) return 0; smp_dump_qct(); return 1; } Loading include/asm-x86/mpspec.h +2 −2 Original line number Diff line number Diff line Loading @@ -21,11 +21,11 @@ extern int pic_mode; /* Each PCI slot may be a combo card with its own bus. 4 IRQ pins per slot. */ #define MAX_IRQ_SOURCES (MAX_MP_BUSSES * 4) #endif extern void early_find_smp_config(void); extern void early_get_smp_config(void); #endif #if defined(CONFIG_MCA) || defined(CONFIG_EISA) extern int mp_bus_id_to_type[MAX_MP_BUSSES]; #endif Loading include/asm-x86/numaq.h +1 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ #ifdef CONFIG_X86_NUMAQ extern int found_numaq; extern int get_memcfg_numaq(void); /* Loading Loading
arch/x86/kernel/mpparse.c +11 −3 Original line number Diff line number Diff line Loading @@ -70,7 +70,10 @@ static void __cpuinit MP_processor_info(struct mpc_config_processor *m) return; } #ifdef CONFIG_X86_NUMAQ if (found_numaq) apicid = mpc_apic_id(m, translation_table[mpc_record]); else apicid = m->mpc_apicid; #else apicid = m->mpc_apicid; #endif Loading @@ -91,6 +94,7 @@ static void __init MP_bus_info(struct mpc_config_bus *m) str[6] = 0; #ifdef CONFIG_X86_NUMAQ if (found_numaq) mpc_oem_bus_info(m, str, translation_table[mpc_record]); #else printk(KERN_INFO "Bus #%d is %s\n", m->mpc_busid, str); Loading @@ -112,6 +116,7 @@ static void __init MP_bus_info(struct mpc_config_bus *m) #endif } else if (strncmp(str, BUSTYPE_PCI, sizeof(BUSTYPE_PCI) - 1) == 0) { #ifdef CONFIG_X86_NUMAQ if (found_numaq) mpc_oem_pci_bus(m, translation_table[mpc_record]); #endif clear_bit(m->mpc_busid, mp_bus_not_pci); Loading Loading @@ -321,6 +326,9 @@ static inline void mps_oem_check(struct mp_config_table *mpc, char *oem, { if (strncmp(oem, "IBM NUMA", 8)) printk("Warning! May not be a NUMA-Q system!\n"); else found_numaq = 1; if (mpc->mpc_oemptr) smp_read_mpc_oem((struct mp_config_oemtable *)mpc->mpc_oemptr, mpc->mpc_oemsize); Loading
arch/x86/kernel/numaq_32.c +19 −5 Original line number Diff line number Diff line Loading @@ -31,9 +31,12 @@ #include <asm/numaq.h> #include <asm/topology.h> #include <asm/processor.h> #include <asm/mpspec.h> #define MB_TO_PAGES(addr) ((addr) << (20 - PAGE_SHIFT)) int found_numaq; /* * Function: smp_dump_qct() * Loading Loading @@ -67,13 +70,24 @@ static void __init smp_dump_qct(void) } } static __init void early_check_numaq(void) { /* * Find possible boot-time SMP configuration: */ early_find_smp_config(); /* * Unlike Summit, we don't really care to let the NUMA-Q * fall back to flat mode. Don't compile for NUMA-Q * unless you really need it! * get boot-time SMP configuration: */ if (smp_found_config) early_get_smp_config(); } int __init get_memcfg_numaq(void) { early_check_numaq(); if (!found_numaq) return 0; smp_dump_qct(); return 1; } Loading
include/asm-x86/mpspec.h +2 −2 Original line number Diff line number Diff line Loading @@ -21,11 +21,11 @@ extern int pic_mode; /* Each PCI slot may be a combo card with its own bus. 4 IRQ pins per slot. */ #define MAX_IRQ_SOURCES (MAX_MP_BUSSES * 4) #endif extern void early_find_smp_config(void); extern void early_get_smp_config(void); #endif #if defined(CONFIG_MCA) || defined(CONFIG_EISA) extern int mp_bus_id_to_type[MAX_MP_BUSSES]; #endif Loading
include/asm-x86/numaq.h +1 −0 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ #ifdef CONFIG_X86_NUMAQ extern int found_numaq; extern int get_memcfg_numaq(void); /* Loading