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 CambridgeReceived 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