]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - arch/x86/kernel/cpu/mcheck/threshold.c
tracing: Add DEFINE_EVENT_FN() macro
[mirror_ubuntu-artful-kernel.git] / arch / x86 / kernel / cpu / mcheck / threshold.c
CommitLineData
73af76df
IM
1/*
2 * Common corrected MCE threshold handler code:
3 */
b2762686 4#include <linux/interrupt.h>
73af76df
IM
5#include <linux/kernel.h>
6
b2762686 7#include <asm/irq_vectors.h>
73af76df 8#include <asm/apic.h>
b2762686 9#include <asm/idle.h>
73af76df 10#include <asm/mce.h>
b2762686
AK
11
12static void default_threshold_interrupt(void)
13{
14 printk(KERN_ERR "Unexpected threshold interrupt at vector %x\n",
15 THRESHOLD_APIC_VECTOR);
16}
17
18void (*mce_threshold_vector)(void) = default_threshold_interrupt;
19
7856f6cc 20asmlinkage void smp_threshold_interrupt(void)
b2762686 21{
b2762686 22 irq_enter();
98ad1cc1 23 exit_idle();
b2762686
AK
24 inc_irq_stat(irq_threshold_count);
25 mce_threshold_vector();
26 irq_exit();
f9695df4
AK
27 /* Ack only at the end to avoid potential reentry */
28 ack_APIC_irq();
b2762686 29}