Fw: 2.6.15-rc2-mm1 problems (get_cpu / NUMA optimizations)

Harald Welte laforge at netfilter.org
Thu Nov 24 21:58:28 CET 2005


On Wed, Nov 23, 2005 at 03:56:03PM -0800, David S. Miller wrote:
> 
> I've seen this reported multiple times.
> 
> It seems that module load is attempted by IP-tables while
> some locks are held, or similar.

yes, this was introduced by the recent NUMA patches that introduced
get_cpu() / put_cpu() all over the place.  

Seems like I only now realize the implications that this has all over
the code, and to be honest, I'm not confident that there is a short-term
fix since a lot of code needs to be audited.  

Also, apart from just the iptables core,  we actually call the
checkentry() and destroy() functions of the match/target extensions
under get_cpu() now.  Plugin authors always assumed that they'd be able
to do stuff like kmalloc(GFP_KERNEL) since they are guaranteed to always
only be called from userspace context under the ipt_mutex.

I'm further analyzing our options, but we might have to pull out that
NUMA change, especially since I'm heading for FOSS.in/linux-bangalore in
a couple of days.

-- 
- Harald Welte <laforge at netfilter.org>                 http://netfilter.org/
============================================================================
  "Fragmentation is like classful addressing -- an interesting early
   architectural error that shows how much experimentation was going
   on while IP was being designed."                    -- Paul Vixie
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : /pipermail/netfilter-devel/attachments/20051124/98b0147c/attachment.pgp


More information about the netfilter-devel mailing list