splxxx level?

Sam sah at softcardsystems.com
Mon Aug 30 13:40:31 PDT 2004


Wow guys, this is great stuff, thanks!

Here's what I've discovered so far and again,
correct me if I'm wrong.

In strategy, I need to protect from my callout
and netisr running.  In my netisr, I need to
protect from my callout running.  In my callout,
I need to protect from my netisr running.

It looks like I can use splnet() everywhere *except*
where I'm pulling mbufs off of the mbuf queue in the
netisr routine.  There I'll have to use splimp() to
keep from banging heads with the hardware.

I think this is the optimum spl-ing as it will allow
the network hardware to keep queueing up packets as I
process them.  Comments?

Sam



More information about the freebsd-arch mailing list