mirror of
https://github.com/torvalds/linux.git
synced 2024-11-11 14:42:24 +00:00
[PATCH] x86-64: Declare NMI_VECTOR and handle it in the IPI sending code.
Signed-off-by: Jan Beulich <jbeulich@novell.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
a2a0c992e9
commit
1a426cb764
@ -26,6 +26,7 @@
|
||||
struct hw_interrupt_type;
|
||||
#endif
|
||||
|
||||
#define NMI_VECTOR 0x02
|
||||
/*
|
||||
* IDT vectors usable for external interrupt sources start
|
||||
* at 0x20:
|
||||
|
@ -31,9 +31,20 @@
|
||||
|
||||
static inline unsigned int __prepare_ICR (unsigned int shortcut, int vector, unsigned int dest)
|
||||
{
|
||||
unsigned int icr = APIC_DM_FIXED | shortcut | vector | dest;
|
||||
if (vector == KDB_VECTOR)
|
||||
icr = (icr & (~APIC_VECTOR_MASK)) | APIC_DM_NMI;
|
||||
unsigned int icr = shortcut | dest;
|
||||
|
||||
switch (vector) {
|
||||
default:
|
||||
icr |= APIC_DM_FIXED | vector;
|
||||
break;
|
||||
case NMI_VECTOR:
|
||||
/*
|
||||
* Setup KDB IPI to be delivered as an NMI
|
||||
*/
|
||||
case KDB_VECTOR:
|
||||
icr |= APIC_DM_NMI;
|
||||
break;
|
||||
}
|
||||
return icr;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user