Parent repository is http://linux-acpi.bkbits.net/linux-acpi-test-2.6.3 ======== ChangeSet 1.1573 ======== D 1.1573 04/02/11 22:15:05-08:00 akpm@mnm.(none) 36579 36561 0/0/1 P ChangeSet C Merge mnm.(none):/usr/src/bk25 into mnm.(none):/usr/src/bk-acpi ------------------------------------------------ diff -Nru a/arch/i386/Kconfig b/arch/i386/Kconfig --- a/arch/i386/Kconfig Wed Feb 11 22:16:46 2004 +++ b/arch/i386/Kconfig Wed Feb 11 22:16:46 2004 @@ -701,7 +701,7 @@ # Common NUMA Features config NUMA bool "Numa Memory Allocation Support" - depends on SMP && HIGHMEM64G && (X86_PC || X86_NUMAQ || X86_GENERICARCH || (X86_SUMMIT && ACPI && !ACPI_HT_ONLY)) + depends on SMP && HIGHMEM64G && (X86_PC || X86_NUMAQ || X86_GENERICARCH || (X86_SUMMIT && ACPI)) default n if X86_PC default y if (X86_NUMAQ || X86_SUMMIT) @@ -709,8 +709,8 @@ comment "NUMA (NUMA-Q) requires SMP, 64GB highmem support" depends on X86_NUMAQ && (!HIGHMEM64G || !SMP) -comment "NUMA (Summit) requires SMP, 64GB highmem support, full ACPI" - depends on X86_SUMMIT && (!HIGHMEM64G || !ACPI || ACPI_HT_ONLY) +comment "NUMA (Summit) requires SMP, 64GB highmem support, ACPI" + depends on X86_SUMMIT && (!HIGHMEM64G || !ACPI) config DISCONTIGMEM bool diff -Nru a/arch/i386/kernel/acpi/boot.c b/arch/i386/kernel/acpi/boot.c --- a/arch/i386/kernel/acpi/boot.c Wed Feb 11 22:16:46 2004 +++ b/arch/i386/kernel/acpi/boot.c Wed Feb 11 22:16:46 2004 @@ -141,6 +141,10 @@ acpi_table_print_madt_entry(header); + /* no utility in registering a disabled processor */ + if (processor->flags.enabled == 0) + return 0; + mp_register_lapic ( processor->id, /* APIC ID */ processor->flags.enabled); /* Enabled? */ diff -Nru a/arch/i386/kernel/mpparse.c b/arch/i386/kernel/mpparse.c --- a/arch/i386/kernel/mpparse.c Wed Feb 11 22:16:46 2004 +++ b/arch/i386/kernel/mpparse.c Wed Feb 11 22:16:46 2004 @@ -634,7 +634,7 @@ /* * ACPI may be used to obtain the entire SMP configuration or just to - * enumerate/configure processors (CONFIG_ACPI_HT). Note that + * enumerate/configure processors (CONFIG_ACPI_BOOT). Note that * ACPI supports both logical (e.g. Hyper-Threading) and physical * processors, where MPS only supports physical. */ @@ -940,7 +940,7 @@ * erroneously sets the trigger to level, resulting in a HUGE * increase of timer interrupts! */ - if ((bus_irq == 0) && (global_irq == 2) && (trigger == 3)) + if ((bus_irq == 0) && (trigger == 3)) trigger = 1; intsrc.mpc_type = MP_INTSRC; @@ -961,7 +961,7 @@ * Otherwise create a new entry (e.g. global_irq == 2). */ for (i = 0; i < mp_irq_entries; i++) { - if ((mp_irqs[i].mpc_dstapic == intsrc.mpc_dstapic) + if ((mp_irqs[i].mpc_srcbus == intsrc.mpc_srcbus) && (mp_irqs[i].mpc_srcbusirq == intsrc.mpc_srcbusirq)) { mp_irqs[i] = intsrc; found = 1; @@ -1008,9 +1008,10 @@ */ for (i = 0; i < 16; i++) { - if (i == 2) continue; /* Don't connect IRQ2 */ + if (i == 2) + continue; /* Don't connect IRQ2 */ - intsrc.mpc_irqtype = i ? mp_INT : mp_ExtINT; /* 8259A to #0 */ + intsrc.mpc_irqtype = mp_INT; intsrc.mpc_srcbusirq = i; /* Identity mapped */ intsrc.mpc_dstirq = i; diff -Nru a/arch/x86_64/kernel/acpi/boot.c b/arch/x86_64/kernel/acpi/boot.c --- a/arch/x86_64/kernel/acpi/boot.c Wed Feb 11 22:16:46 2004 +++ b/arch/x86_64/kernel/acpi/boot.c Wed Feb 11 22:16:46 2004 @@ -120,6 +120,11 @@ acpi_table_print_madt_entry(header); + /* no utility in registering a disabled processor */ + if (processor->flags.enabled == 0) + return 0; + + mp_register_lapic ( processor->id, /* APIC ID */ processor->flags.enabled); /* Enabled? */ diff -Nru a/arch/x86_64/kernel/mpparse.c b/arch/x86_64/kernel/mpparse.c --- a/arch/x86_64/kernel/mpparse.c Wed Feb 11 22:16:46 2004 +++ b/arch/x86_64/kernel/mpparse.c Wed Feb 11 22:16:46 2004 @@ -487,7 +487,7 @@ /* * ACPI may be used to obtain the entire SMP configuration or just to - * enumerate/configure processors (CONFIG_ACPI_HT_ONLY). Note that + * enumerate/configure processors (CONFIG_ACPI_BOOT). Note that * ACPI supports both logical (e.g. Hyper-Threading) and physical * processors, where MPS only supports physical. */ diff -Nru a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig --- a/drivers/acpi/Kconfig Wed Feb 11 22:16:46 2004 +++ b/drivers/acpi/Kconfig Wed Feb 11 22:16:46 2004 @@ -143,7 +143,7 @@ bool "NUMA support" depends on ACPI_INTERPRETER depends on NUMA - depends on !X86_64 + depends on IA64 default y if IA64_GENERIC || IA64_SGI_SN2 config ACPI_ASUS diff -Nru a/drivers/acpi/numa.c b/drivers/acpi/numa.c --- a/drivers/acpi/numa.c Wed Feb 11 22:16:46 2004 +++ b/drivers/acpi/numa.c Wed Feb 11 22:16:46 2004 @@ -172,7 +172,7 @@ NR_CPUS); result = acpi_table_parse_srat(ACPI_SRAT_MEMORY_AFFINITY, acpi_parse_memory_affinity, - NR_MEMBLKS); + NR_NODE_MEMBLKS); // IA64 specific } else { /* FIXME */ printk("Warning: acpi_table_parse(ACPI_SRAT) returned %d!\n",result);