aboutsummaryrefslogtreecommitdiffstats
path: root/net/netfilter/nf_conntrack_core.c
diff options
context:
space:
mode:
authorPatrick McHardy <kaber@trash.net>2007-02-12 11:13:14 -0800
committerDavid S. Miller <davem@davemloft.net>2007-02-12 11:13:14 -0800
commitabbaccda4c364815b8b1a82c45a94f60760e13e1 (patch)
tree58e28cc25db59456092fc760b7a29e6d223610c5 /net/netfilter/nf_conntrack_core.c
parent[NETFILTER]: nf_conntrack: properly use RCU API for nf_ct_protos/nf_ct_l3protos arrays (diff)
downloadlinux-dev-abbaccda4c364815b8b1a82c45a94f60760e13e1.tar.xz
linux-dev-abbaccda4c364815b8b1a82c45a94f60760e13e1.zip
[NETFILTER]: ip_conntrack: fix invalid conntrack statistics RCU assumption
CONNTRACK_STAT_INC assumes rcu_read_lock in nf_hook_slow disables preemption as well, making it legal to use __get_cpu_var without disabling preemption manually. The assumption is not correct anymore with preemptable RCU, additionally we need to protect against softirqs when not holding ip_conntrack_lock. Add CONNTRACK_STAT_INC_ATOMIC macro, which disables local softirqs, and use where necessary. Signed-off-by: Patrick McHardy <kaber@trash.net> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions