Interrupt gates are set in linux as set_intr_gate(i, interrupt[i-FIRST_EXTERNAL_VECTOR]); ^ but the 'interrupt' is declared as extern void (*__initconst interrupt[NR_VECTORS-FIRST_EXTERNAL_VECTOR])(void); can anyone possibly tell when are these enteries filled with valid pointers ???