lkml.org 
[lkml]   [2004]   [Feb]   [3]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateTue, 3 Feb 2004 10:35:02 +0100
FromIngo Molnar <>
SubjectRe: New v. v. experimental HOTPLUG CPU megapatch.
* Rusty Russell <rusty@rustcorp.com.au> wrote:

> Patch against 2.6.2-rc2-mm2.  Works basically, gives "APIC error on
> CPU1: 08(08)" under stress.  Clues welcome.

APIC error 08 is receive error. Ie. most likely there was a pending IPI
(or pending hwirq) to that CPU but the CPU was zapped and the APIC
reset. I'd suggest to add "sti;nop;cli" instructions after the IO-APIC
masks have been redirected [note the nop - the interrupt-enable boundary
on x86 is two instructions from sti] - to flush out pending hardirqs and
IPIs. After this point nothing is supposed to reach this CPU. Enabling
irqs at this point should not cause any races, because you do this
first, right?

the pending cross-CPU-IPI case should not happen if the infrastructure
is correct, external hardirqs are not an issue unless it's an
edge-triggered device. So the worst-case with your current code could be
a lost timer IRQ or a lost edge-triggered PCI irq (old ne2k cards).

	Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:00    [from the cache]
©2003-2008