diff options
author | Patrick McHardy <kaber@trash.net> | 2009-06-10 14:32:47 +0200 |
---|---|---|
committer | Patrick McHardy <kaber@trash.net> | 2009-06-10 14:32:47 +0200 |
commit | 440f0d588555892601cfe511728a0fc0c8204063 (patch) | |
tree | 1b98fe9ec8f7e7337f7eed09af2c36a43a9f92b8 /include/net/netfilter/nf_conntrack.h | |
parent | a31e1ffd2231b8fdf7eda9ed750a4a0df9bcad4e (diff) | |
download | op-kernel-dev-440f0d588555892601cfe511728a0fc0c8204063.zip op-kernel-dev-440f0d588555892601cfe511728a0fc0c8204063.tar.gz |
netfilter: nf_conntrack: use per-conntrack locks for protocol data
Introduce per-conntrack locks and use them instead of the global protocol
locks to avoid contention. Especially tcp_lock shows up very high in
profiles on larger machines.
This will also allow to simplify the upcoming reliable event delivery patches.
Signed-off-by: Patrick McHardy <kaber@trash.net>
Diffstat (limited to 'include/net/netfilter/nf_conntrack.h')
-rw-r--r-- | include/net/netfilter/nf_conntrack.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/net/netfilter/nf_conntrack.h b/include/net/netfilter/nf_conntrack.h index 2b87737..ecc79f9 100644 --- a/include/net/netfilter/nf_conntrack.h +++ b/include/net/netfilter/nf_conntrack.h @@ -93,6 +93,8 @@ struct nf_conn { plus 1 for any connection(s) we are `master' for */ struct nf_conntrack ct_general; + spinlock_t lock; + /* XXX should I move this to the tail ? - Y.K */ /* These are my tuples; original and reply */ struct nf_conntrack_tuple_hash tuplehash[IP_CT_DIR_MAX]; |