rounding up CPUs on debug exception

Geoff Levand geoffrey.levand at am.sony.com
Fri Sep 30 02:55:11 EST 2005


Paul Mackerras wrote:
> Geoff Levand writes:
> 
> 
>>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.
> 
> 
> Xmon uses smp_send_debugger_break(MSG_ALL_BUT_SELF) for this.  It
> isn't an NMI, just a regular IPI, though.
> 

Thanks for the tip.  I used this and it works OK, although it seems
take a long time to sync under some conditions.  

I noticed in your 'hotplug cpu on powermacs' post that powermacs have
the soft-reset pin connected to a GPIO port.  When I have some time 
I'll look into using this to send an NMI to the orher CPU's.

-Geoff




More information about the Linuxppc64-dev mailing list