about not disabling shared interrupts while in ISR

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

 



Hello All,

   I am reading Linux Kernel Development 2nd Ed and in Ch 6 about Interrupts and Interrupt Handler
it mentions about functions defined in kernel to disable interrupts.

local_irq_disable/enable, disable_irq, enable_irq etc.

Stating that we need to disable atleast an interrupt line when executing an corresponding interrupt handler.
Than it also talks about PCI were the specification mandates the sharing of interrupt lines and mentions that
in such scenario its rude to disable shared interrupt lines and most modern device driver tend not to use these
interfaces. (on page 91) Did not explain further that if so, which mechanism is used to execute ISR in its entirety.

My Question is:
If modern driver doesn't use interrupt disable routines how do they make sure that ISR is  getting executed
uninterrupted and without having cascading calls to the same ISR while its in execution.

Please help me in understanding this.

Regards,
Vipul.


[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