Re: Registering shared & unshared interrupt handlers
On Sun, Feb 16, 2014 at 10:36 PM, Jay Aurabind wrote: > Dear all, > > I've been going through Robert Love's LKD. Here is an excerpt from it > regarding registration of interrupt handlers: > > "When request_irq() is called with IRQF_SHARED specified, the call succeeds > only if the interrupt line is currently not registered, or if all registered > handlers on the line also specified IRQF_SHARED. Shared handlers, however, > can mix usage of IRQF_DISABLED." > > As far as I understand, the first sentence tells that a line currently > having shared handlers *will only have* handlers registered with IRQF_SHARED > flag in the past. Correct ? Yes. > > If a interrupt line has been registered by a handler specified as non > shared, then whats the point in allowing a new handler with a "shared" flag It doesn't allow as your statement in above indicates. > registering to the same line ? So how does the mixing of shared and unshared > interrupt handlers for the same line go together as mentioned by the 2nd > sentence ? > > Or does it mean that a shared handler which already succeeded the > registration can further register a non shared and shared interrupt > handlers? ( That doesnt make sense, but still... ) ? Simply put, can > someone please elaborate on the second sentence I quoted from the book ? Where is the confusion ? Just to be clear, kernel doesn't allow shared and unshared interrupt handler on the same interrupt line. Read the code in irq core subsystem. kernel/kernel/irq > > > Thanks and Regards, > Aurabindo J > > ___ > Kernelnewbies mailing list > Kernelnewbies@kernelnewbies.org > http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies > ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Registering shared & unshared interrupt handlers
Oops, I though IRQ_DISABLED was the opposite of IRQF_SHARED. Sorry. Consider the question not asked :P On 17 February 2014 12:06, Jay Aurabind wrote: > Dear all, > > I've been going through Robert Love's LKD. Here is an excerpt from it > regarding registration of interrupt handlers: > > "When request_irq() is called with IRQF_SHARED specified, the call > succeeds only if the interrupt line is currently not registered, or if all > registered handlers on the line also specified IRQF_SHARED. Shared > handlers, however, can mix usage of IRQF_DISABLED." > > As far as I understand, the first sentence tells that a line currently > having shared handlers *will only have* handlers registered with > IRQF_SHARED flag in the past. Correct ? > > If a interrupt line has been registered by a handler specified as non > shared, then whats the point in allowing a new handler with a "shared" flag > registering to the same line ? So how does the mixing of shared and > unshared interrupt handlers for the same line go together as mentioned by > the 2nd sentence ? > > Or does it mean that a shared handler which already succeeded the > registration can further register a non shared and shared interrupt > handlers? ( That doesnt make sense, but still... ) ? Simply put, can > someone please elaborate on the second sentence I quoted from the book ? > > > Thanks and Regards, > Aurabindo J > -- Thanks and Regards, *Aurabindo J* ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Registering shared & unshared interrupt handlers
Dear all, I've been going through Robert Love's LKD. Here is an excerpt from it regarding registration of interrupt handlers: "When request_irq() is called with IRQF_SHARED specified, the call succeeds only if the interrupt line is currently not registered, or if all registered handlers on the line also specified IRQF_SHARED. Shared handlers, however, can mix usage of IRQF_DISABLED." As far as I understand, the first sentence tells that a line currently having shared handlers *will only have* handlers registered with IRQF_SHARED flag in the past. Correct ? If a interrupt line has been registered by a handler specified as non shared, then whats the point in allowing a new handler with a "shared" flag registering to the same line ? So how does the mixing of shared and unshared interrupt handlers for the same line go together as mentioned by the 2nd sentence ? Or does it mean that a shared handler which already succeeded the registration can further register a non shared and shared interrupt handlers? ( That doesnt make sense, but still... ) ? Simply put, can someone please elaborate on the second sentence I quoted from the book ? Thanks and Regards, Aurabindo J signature.asc Description: OpenPGP digital signature ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies