bitkeeper revision 1.891.1.19 (40a49b2eZfynI3tLUn0NhSwoKrukoA)
authorkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>
Fri, 14 May 2004 10:10:54 +0000 (10:10 +0000)
committerkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>
Fri, 14 May 2004 10:10:54 +0000 (10:10 +0000)
IPI counters.

xen/arch/i386/smp.c
xen/include/xen/perfc_defn.h

index 5ed43d555158a563584247fcf9917e453ede74ac..57869c7b772e39cb655833961add1a9f873b376e 100644 (file)
@@ -226,6 +226,7 @@ static volatile unsigned long flush_cpumask;
 asmlinkage void smp_invalidate_interrupt(void)
 {
     ack_APIC_irq();
+    perfc_incrc(ipis);
     local_flush_tlb();
     clear_bit(smp_processor_id(), &flush_cpumask);
 }
@@ -419,6 +420,7 @@ void smp_send_stop(void)
 asmlinkage void smp_event_check_interrupt(void)
 {
     ack_APIC_irq();
+    perfc_incrc(ipis);
 }
 
 asmlinkage void smp_call_function_interrupt(void)
@@ -428,6 +430,8 @@ asmlinkage void smp_call_function_interrupt(void)
     int wait = call_data->wait;
 
     ack_APIC_irq();
+    perfc_incrc(ipis);
+
     /*
      * Notify initiating CPU that I've grabbed the data and am
      * about to execute the function
index bf06719e355e39b58d9fce5b07e6b33e19159a4f..850edf96c05b4bb3ce40f647fd076a5b0f980266 100644 (file)
@@ -1,5 +1,6 @@
 
 PERFCOUNTER_CPU( irqs,         "#interrupts" )
+PERFCOUNTER_CPU( ipis,         "#IPIs" )
 PERFCOUNTER_CPU( irq_time,     "cycles spent in irq handler" )
 
 PERFCOUNTER_CPU( apic_timer,   "apic timer interrupts" )