FreeBSD/sys/x86/x86/local_apic.c
/*
 * Enable a vector for a particular apic_id.  Since all lapics share idt
 * entries and ioint_handlers this enables the vector on all lapics.  lapics
 * which do not have the vector configured would report spurious interrupts
 * should it fire.
 */
Enable a vector for a particular apic_id.  Since all lapics share idt
entries and ioint_handlers this enables the vector on all lapics.  lapics
which do not have the vector configured would report spurious interrupts
should it fire.
Enable a vector for a particular apic_id . Since all lapics share idt entries and ioint_handlers this enables the vector on all lapics . lapics which do not have the vector configured would report spurious interrupts should it fire .
static void
native_apic_enable_vector(u_int apic_id, u_int vector)
{
	KASSERT(vector != IDT_SYSCALL, ("Attempt to overwrite syscall entry"));
	KASSERT(ioint_handlers[vector / 32] != NULL,
	    ("No ISR handler for vector %u", vector));
#ifdef KDTRACE_HOOKS
	KASSERT(vector != IDT_DTRACE_RET,
	    ("Attempt to overwrite DTrace entry"));
#endif
	setidt(vector, ioint_handlers[vector / 32], SDT_APIC, SEL_KPL,
	    GSEL_APIC);
}
static void native_apic_enable_vector ( u_int apic_id , u_int vector ) { KASSERT ( vector != IDT_SYSCALL , ( " " ) ) ; KASSERT ( ioint_handlers [ vector / 32 ] != NULL , ( " " , vector ) ) ; #ifdef KDTRACE_HOOKS KASSERT ( vector != IDT_DTRACE_RET , ( " " ) ) ; #endif setidt ( vector , ioint_handlers [ vector / 32 ] , SDT_APIC , SEL_KPL , GSEL_APIC ) ; }
Enable a vector for a particular apic_id.
Enable a vector for a particular apic_id .