Re: Emitting an ignore_int() handled interrupt and system response

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Mar 19, 2007 at 10:49:46AM +0530, Rajat Jain wrote:
> >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?
> 

I've searched the i386 reference to see if there're vectors allowed
from software and others which are not. I found no references except this
paragraph:

``
*  Programmed. The instructions INTO, INT 3, INT n, and BOUND can
   trigger exceptions. These instructions are often called "software
   interrupts", but the processor handles them as exceptions. ''


Could you please point me to a document that describes such a 
prohibited-from-software case (Googling didn't help) ?

Thanks,

-- 
Ahmed S. Darwish
http://darwish.07.googlepages.com


--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux