diff options
author | Patrick McHardy <kaber@trash.net> | 2009-06-10 08:32:47 -0400 |
---|---|---|
committer | Patrick McHardy <kaber@trash.net> | 2009-06-10 08:32:47 -0400 |
commit | 440f0d588555892601cfe511728a0fc0c8204063 (patch) | |
tree | 1b98fe9ec8f7e7337f7eed09af2c36a43a9f92b8 /net/netfilter/nf_conntrack_netlink.c | |
parent | a31e1ffd2231b8fdf7eda9ed750a4a0df9bcad4e (diff) |
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 'net/netfilter/nf_conntrack_netlink.c')
-rw-r--r-- | net/netfilter/nf_conntrack_netlink.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/netfilter/nf_conntrack_netlink.c b/net/netfilter/nf_conntrack_netlink.c index 4448b062de0..4e503ada572 100644 --- a/net/netfilter/nf_conntrack_netlink.c +++ b/net/netfilter/nf_conntrack_netlink.c | |||
@@ -143,7 +143,7 @@ nla_put_failure: | |||
143 | } | 143 | } |
144 | 144 | ||
145 | static inline int | 145 | static inline int |
146 | ctnetlink_dump_protoinfo(struct sk_buff *skb, const struct nf_conn *ct) | 146 | ctnetlink_dump_protoinfo(struct sk_buff *skb, struct nf_conn *ct) |
147 | { | 147 | { |
148 | struct nf_conntrack_l4proto *l4proto; | 148 | struct nf_conntrack_l4proto *l4proto; |
149 | struct nlattr *nest_proto; | 149 | struct nlattr *nest_proto; |
@@ -347,7 +347,7 @@ nla_put_failure: | |||
347 | 347 | ||
348 | static int | 348 | static int |
349 | ctnetlink_fill_info(struct sk_buff *skb, u32 pid, u32 seq, | 349 | ctnetlink_fill_info(struct sk_buff *skb, u32 pid, u32 seq, |
350 | int event, const struct nf_conn *ct) | 350 | int event, struct nf_conn *ct) |
351 | { | 351 | { |
352 | struct nlmsghdr *nlh; | 352 | struct nlmsghdr *nlh; |
353 | struct nfgenmsg *nfmsg; | 353 | struct nfgenmsg *nfmsg; |