Loading include/asm-x86_64/hw_irq.h +1 −0 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ struct hw_interrupt_type; #endif #define NMI_VECTOR 0x02 /* * IDT vectors usable for external interrupt sources start * at 0x20: Loading include/asm-x86_64/ipi.h +14 −3 Original line number Diff line number Diff line Loading @@ -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 Loading
include/asm-x86_64/hw_irq.h +1 −0 Original line number Diff line number Diff line Loading @@ -26,6 +26,7 @@ struct hw_interrupt_type; #endif #define NMI_VECTOR 0x02 /* * IDT vectors usable for external interrupt sources start * at 0x20: Loading
include/asm-x86_64/ipi.h +14 −3 Original line number Diff line number Diff line Loading @@ -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