Re: Interrupt routine usage not shown by top in 8.0

From: Robert Watson <rwatson_at_FreeBSD.org>
Date: Tue, 17 Mar 2009 15:24:26 +0000 (GMT)
On Tue, 17 Mar 2009, Paolo Pisati wrote:

> perhaps i misunderstood your question, but i'll try to explain a bit:
>
> before 7.0, bus_setup_intr() took just one function thus you could have an 
> INTR_FAST or an INTR_MPSAFE handler, and you choose the kind of handler via 
> a flag (INTR_FAST in this case).
>
> after 7.0, bus_setup_intr() took 2 functions, thus you could have: a fast 
> handler (aka filter), or an ithread handler (aka mpsafe), or a fast + 
> ithread handler (available only with INTR_FILTER turned on).
>
> in bus_setup_intr() the first function pointer is for the filter side of the 
> handler, while the second pointer is for the ithread part, and if you 
> declare both you can filter events (interrupts) and call the rest of the 
> device driver (the ithread part) after the filter has recognized and 
> acknowledged&masked the interrupt.

This clarifies my misunderstanding, thanks!

Robert N M Watson
Computer Laboratory
University of Cambridge
Received on Tue Mar 17 2009 - 14:24:27 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:44 UTC