Re: [discuss] [PATCH] add and handle NMI_VECTOR II

From: Jan Beulich
Date: Fri Sep 09 2005 - 02:13:24 EST


>> >Index: linux/arch/x86_64/kernel/traps.c
>>
>===================================================================
>> >--- linux.orig/arch/x86_64/kernel/traps.c
>> >+++ linux/arch/x86_64/kernel/traps.c
>> >@@ -931,7 +931,7 @@ void __init trap_init(void)
>> > set_system_gate(IA32_SYSCALL_VECTOR, ia32_syscall);
>> > #endif
>> >
>> >- set_intr_gate(KDB_VECTOR, call_debug);
>> >+ set_intr_gate(NMI_VECTOR, call_debug);
>> >
>> > /*
>> > * Should be a barrier for any external CPU state.
>>
>> I never understood what this does. If you deliver the IPI as an
NMI,
>> it'll never arrive at this vector, and why would anyone want to put
an
>> "int $NMI_VECTOR" anywhere?
>
>You can force an NMI when sending an IPI by setting the right bits
>in ICR. That is what it is used for.

??? This is what the code doing the setup does. But the question was -
what do you need the IDT entry for?

Jan
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/