Re: where is the request_irq in 2.6.30?

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

 



On Thu, May 20, 2010 at 14:38, loody <miloody@xxxxxxxxx> wrote:
> Dear all:
> Where tracing the kernel, 2.6.30, I cannot find "request_irq", which
> is previous devined in kernel/irq/manage.c.

I think you already saw it, but you didn't really pay attention. It's
include/linux/interrupt.h. Please see
http://lxr.linux.no/linux+v2.6.30.10/include/linux/interrupt.h#L113

> I see there is a new function request_threaded_irq seems to replace
> request_irq if I config CONFIG_GENERIC_HARDIRQS.
> But I see other device driver still use request_irq to register their interrupt.
> Would anyone tell me where the function lacated and what is the
> difference and why between request_irq and request_threaded_irq?

I think the best answer is by reading this URL: http://lwn.net/Articles/302043/

Essentially, threaded irq handler is made to reduce latency. To be
precise, by "splitting" top half into 2 parts: one that is just simply
acknowledging the interrupt, and the other to do the real job usually
done inside top half...but this time...the latter is done not by
disabling interrupt (this is my personal understanding, since
logically this is the way to reduce latency)

-- 
regards,

Mulyadi Santosa
Freelance Linux trainer and consultant

blog: the-hydra.blogspot.com
training: mulyaditraining.blogspot.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