diff options
Diffstat (limited to 'arch/x86/kernel/smp_64.c')
-rw-r--r-- | arch/x86/kernel/smp_64.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86/kernel/smp_64.c b/arch/x86/kernel/smp_64.c index df4a82812adb..5c2964727d19 100644 --- a/arch/x86/kernel/smp_64.c +++ b/arch/x86/kernel/smp_64.c | |||
@@ -163,6 +163,7 @@ asmlinkage void smp_invalidate_interrupt(struct pt_regs *regs) | |||
163 | out: | 163 | out: |
164 | ack_APIC_irq(); | 164 | ack_APIC_irq(); |
165 | cpu_clear(cpu, f->flush_cpumask); | 165 | cpu_clear(cpu, f->flush_cpumask); |
166 | add_pda(irq_tlb_count, 1); | ||
166 | } | 167 | } |
167 | 168 | ||
168 | static void flush_tlb_others(cpumask_t cpumask, struct mm_struct *mm, | 169 | static void flush_tlb_others(cpumask_t cpumask, struct mm_struct *mm, |
@@ -493,6 +494,7 @@ void smp_send_stop(void) | |||
493 | asmlinkage void smp_reschedule_interrupt(void) | 494 | asmlinkage void smp_reschedule_interrupt(void) |
494 | { | 495 | { |
495 | ack_APIC_irq(); | 496 | ack_APIC_irq(); |
497 | add_pda(irq_resched_count, 1); | ||
496 | } | 498 | } |
497 | 499 | ||
498 | asmlinkage void smp_call_function_interrupt(void) | 500 | asmlinkage void smp_call_function_interrupt(void) |
@@ -514,6 +516,7 @@ asmlinkage void smp_call_function_interrupt(void) | |||
514 | exit_idle(); | 516 | exit_idle(); |
515 | irq_enter(); | 517 | irq_enter(); |
516 | (*func)(info); | 518 | (*func)(info); |
519 | add_pda(irq_call_count, 1); | ||
517 | irq_exit(); | 520 | irq_exit(); |
518 | if (wait) { | 521 | if (wait) { |
519 | mb(); | 522 | mb(); |