preemptive kernel

Orit Moskovich oritm at mellanox.com
Mon May 27 07:24:07 UTC 2013


What is actually the difference between deferring a filter routine's work using an ithread given to bus_setup_intr, or using the global taskqueue_swi (implemented using interrupt thread)?
What do you mean that the functionality is locked under INTR_FILTER?


-----Original Message-----
From: Andriy Gapon [mailto:avg at FreeBSD.org] 
Sent: Monday, May 27, 2013 10:11 AM
To: Konstantin Belousov
Cc: Orit Moskovich; freebsd-hackers at freebsd.org
Subject: Re: preemptive kernel

on 27/05/2013 09:34 Konstantin Belousov said the following:
> Having both filter and ithread for the same interrupt is apparently 
> possible but weird.  I do not see anything which would prevent 
> interrupt filter from being executed while the ithread is running.  
> But again, this is very unusual setup.

I wouldn't call it weird, but, yes, it is rare.  It's a pretty normal configuration when the filter acts as a filter and the handler acts as a handler (in ithread).  In other words, it would be a replacement for a configuration where a filter is used and the filter offloads actual work to non-interrupt context via a e.g. taskqueue.
But, hmm, this functionality is probably locked under INTR_FILTER option.

--
Andriy Gapon


More information about the freebsd-hackers mailing list