On Tuesday 07 August 2007 22:19:35 Yinghai Lu wrote: > [PATCH] x86_64: clear IO_APIC before enabing apic error vector. > > some apic id lifting system: 4 socket quad core, 8 socket quad core will do > apic id lifting for BSP. > > but io-apic regs for ExtINT still use 0 as dest.
good catch! > diff --git a/arch/x86_64/kernel/apic.c b/arch/x86_64/kernel/apic.c > index 900ff38..a2ae138 100644 > --- a/arch/x86_64/kernel/apic.c > +++ b/arch/x86_64/kernel/apic.c > @@ -436,6 +436,14 @@ void __cpuinit setup_local_APIC (void) > value = APIC_DM_NMI | APIC_LVT_MASKED; > apic_write(APIC_LVT1, value); > > + /* > + * Now enable IO-APICs, actually call clear_IO_APIC > + * We need clear_IO_APIC before enabling vector on BP > + */ > + if (!smp_processor_id()) > + if (!skip_ioapic_setup && nr_ioapics) > + enable_IO_APIC(); Surely you meant something prettier like + if (!smp_processor_id() && !skip_ioapic_setup && nr_ioapics) + enable_IO_APIC(); -Joachim - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/