Subject: How to protect pool operations from interrupts ?
To: None <,>
From: Zdenek Salvet <>
List: tech-net
Date: 06/12/2000 20:19:44

it seems that pool_get(), pool_put() etc. are protected from concurrent
kernel threads with simple_lock(). But simple_lock does does nothing
in !MULTIPROCESSOR case and does not block any interrupts.

I have seen the following scenario:


Should we protect each m_freem() called from code running with lower spl
( s=splnet();m_freem();splx(s) ) or should pool protect itself like 
malloc()/free() do ?

How about non-mbuf pools ?

Zdenek Salvet                                     
Ustav vypocetni techniky Masarykovy univerzity, Brno
tel.: ++420-5-41 512 257                           fax: ++420-5-41 212 747
         God isn't dead, He's just trying to avoid the draft.