netfilter: nf_conntrack: use per-conntrack locks for protocol data
authorPatrick McHardy <kaber@trash.net>
Wed, 10 Jun 2009 12:32:47 +0000 (14:32 +0200)
committerPatrick McHardy <kaber@trash.net>
Wed, 10 Jun 2009 12:32:47 +0000 (14:32 +0200)
commit440f0d588555892601cfe511728a0fc0c8204063
tree1b98fe9ec8f7e7337f7eed09af2c36a43a9f92b8
parenta31e1ffd2231b8fdf7eda9ed750a4a0df9bcad4e
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>
include/net/netfilter/nf_conntrack.h
include/net/netfilter/nf_conntrack_l4proto.h
net/netfilter/nf_conntrack_core.c
net/netfilter/nf_conntrack_netlink.c
net/netfilter/nf_conntrack_proto_dccp.c
net/netfilter/nf_conntrack_proto_gre.c
net/netfilter/nf_conntrack_proto_sctp.c
net/netfilter/nf_conntrack_proto_tcp.c