diff options
Diffstat (limited to 'arch/x86/include/asm/nmi.h')
-rw-r--r-- | arch/x86/include/asm/nmi.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/arch/x86/include/asm/nmi.h b/arch/x86/include/asm/nmi.h index c4021b953510..c76f5b92b840 100644 --- a/arch/x86/include/asm/nmi.h +++ b/arch/x86/include/asm/nmi.h | |||
@@ -23,6 +23,26 @@ void arch_trigger_all_cpu_backtrace(void); | |||
23 | #define arch_trigger_all_cpu_backtrace arch_trigger_all_cpu_backtrace | 23 | #define arch_trigger_all_cpu_backtrace arch_trigger_all_cpu_backtrace |
24 | #endif | 24 | #endif |
25 | 25 | ||
26 | /* | ||
27 | * Define some priorities for the nmi notifier call chain. | ||
28 | * | ||
29 | * Create a local nmi bit that has a higher priority than | ||
30 | * external nmis, because the local ones are more frequent. | ||
31 | * | ||
32 | * Also setup some default high/normal/low settings for | ||
33 | * subsystems to registers with. Using 4 bits to seperate | ||
34 | * the priorities. This can go alot higher if needed be. | ||
35 | */ | ||
36 | |||
37 | #define NMI_LOCAL_SHIFT 16 /* randomly picked */ | ||
38 | #define NMI_LOCAL_BIT (1ULL << NMI_LOCAL_SHIFT) | ||
39 | #define NMI_HIGH_PRIOR (1ULL << 8) | ||
40 | #define NMI_NORMAL_PRIOR (1ULL << 4) | ||
41 | #define NMI_LOW_PRIOR (1ULL << 0) | ||
42 | #define NMI_LOCAL_HIGH_PRIOR (NMI_LOCAL_BIT | NMI_HIGH_PRIOR) | ||
43 | #define NMI_LOCAL_NORMAL_PRIOR (NMI_LOCAL_BIT | NMI_NORMAL_PRIOR) | ||
44 | #define NMI_LOCAL_LOW_PRIOR (NMI_LOCAL_BIT | NMI_LOW_PRIOR) | ||
45 | |||
26 | void stop_nmi(void); | 46 | void stop_nmi(void); |
27 | void restart_nmi(void); | 47 | void restart_nmi(void); |
28 | 48 | ||