Thread (27 messages) 27 messages, 3 authors, 2016-05-05

Re: [PATCH nf-next 0/9] netfilter: remove per-netns conntrack tables, part 1

From: Pablo Neira Ayuso <pablo@netfilter.org>
Date: 2016-05-03 22:30:08
Also in: netfilter-devel

On Thu, Apr 28, 2016 at 07:13:39PM +0200, Florian Westphal wrote:
[ CCing netdev so netns folks can have a look too ]

This patch series removes the per-netns connection tracking tables.
All conntrack objects are then stored in one global global table.

This avoids the infamous 'vmalloc' when lots of namespaces are used:
We no longer allocate a new conntrack table for each namespace (with 64k
size this saves 512kb of memory per netns).

- net namespace address is made part of conntrack hash, to spread
  conntracks over entire table even if netns has overlapping ip addresses.
- lookup and iterators net_eq() to skip conntracks living in a different
  namespace.

Only the main conntrack table is converted here:
NAT bysrc and expectation hashes are still per namespace (will be unified
in a followup series).  Also, this retains the per-namespace kmem cache
for the conntrack objects.  This will also be resolved in a followup series.
This rework in important, I'm going to place this batch in the tree so
you can keep working on this. Thanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help