rounding up CPUs on debug exception

Geoff Levand geoffrey.levand at am.sony.com
Tue Sep 27 04:52:16 EST 2005


When kgdb handles a debugging exception (trap or trace for ppc) it 
tries to stop execution on the other CPUs as soon as possible so 
that changes in the system state from the time of the exception 
are minimized.  The i386 code (below) uses the inter-processor 
interrupt features of the APIC interrupt controller to send a 
high priority NMI to the other CPUs.  An NMI is needed here, 
since another CPU may be waiting with interrupts disabled on a 
spin lock the current cpu holds.

void kgdb_roundup_cpus(unsigned long flags)
{
	send_IPI_allbutself(APIC_DM_NMI);
}

I need something similar to support SMP on ppc64.  Can anyone 
suggest something?

-Geoff




More information about the Linuxppc64-dev mailing list