On 8/25/06, Garrett D'Amore <[EMAIL PROTECTED]> wrote:
I need to offload some processing from high level interrupt to some
thing more sane.

Historically I've always used soft interrupts to do this, as that was
the "documented" and preferred way.

I'm curious though, we now have taskq's in the DDI.  What are the
trade-offs between using soft interrupts (SOFTINTR_HIGH was what I had
_planned_ to use) and taskq's?  Do soft interrupts get higher scheduling
priority?  What about dispatcher latencies?  Is there a difference?


Garrett,

 I believe soft interrupts are basically the same as hardware
interrupts in that they disrupt whatever the CPU is doing and execute
immediately (unless the CPU is already at a high PIL of course).
 taskqs on the other hand are handled by a non-interrupt level kernel
thread and so will be subject to normal scheduling.

 What would be useful to me is a means of kicking a soft interrupt of
on a given CPU (I assume they run on the same CPU as the caller of
'trigger' at the moment) so I can get work done where I know the data
should be in cache.

 Paul

--
Paul Durrant
http://www.linkedin.com/in/pdurrant
_______________________________________________
opensolaris-code mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/opensolaris-code

Reply via email to