Re: Interrupt routine usage not shown by top in 8.0

From: Robert Watson <rwatson_at_FreeBSD.org>
Date: Tue, 17 Mar 2009 14:04:25 +0000 (GMT)
On Fri, 13 Mar 2009, Barney Cordoba wrote:

> Can you clarify the difference between using a fast irq and then launching a 
> thread (as em does) versus using an MPSAFE interrupt as most other drivers 
> (particularly bge and ibg) use?
>
> How do they differ in terms of how they are called and executed?

I agree that the code there looks inconsistent in when it uses fast vs regular 
mpsafe interrupts, Scott may be able to shed more light on this.  I'm 
especially confused by:

#if __FreeBSD_version < 700000
         if ((error = bus_setup_intr(dev, adapter->res[0],
             INTR_TYPE_NET | INTR_FAST, em_irq_fast, adapter,
#else
         if ((error = bus_setup_intr(dev, adapter->res[0],
             INTR_TYPE_NET, em_irq_fast, NULL, adapter,
#endif

This is in what I took to be the INTR_FAST registration, so I would expect 
also to see INTR_FAST in the mask for that second bit.

Robert N M Watson
Computer Laboratory
University of Cambridge
Received on Tue Mar 17 2009 - 13:04:26 UTC

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