As said by `Understanding linux kernel', all the 255 IDT (Interrupt Descriptor Table) entries are initialized in system initialization to the handler ignore_int. ignore_int job is to print "Unkown interrupt" and return to normal code: --> arch/i386/kernel/head.S: int_msg: .asciz "Unknown interrupt or fault at EIP %p %p %p\n" [...] ignore_int: [...] pushl $int_msg call printk [...] iret I've created a small module to test above code (having a doubt about a line) and I got a BUG and the message above wasn't printed. Here's the module code: #include <linux/module.h> MODULE_LICENSE("GPL"); /* IRQ 25 is reserved as said by Intel documentation, So * vector 25 is handled by ignore_int */ int init(void) { asm("int $25"); return 0;} module_init(init);
Not sure if this will be of help ... but software is not allow to issue any interrupt that it wants. There is an allowable number of interrupts that the software can issue, the rest of them have to be raised in hardware. Are you sure that IRQ 25 is allowed to be issued from software? Thanks, Rajat -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ