netfilter: {ip,ip6,arp}_tables: dont block bottom half more than necessary
authorEric Dumazet <eric.dumazet@gmail.com>
Mon, 2 Aug 2010 14:49:01 +0000 (16:49 +0200)
committerPatrick McHardy <kaber@trash.net>
Mon, 2 Aug 2010 14:49:01 +0000 (16:49 +0200)
commit24b36f0193467fa727b85b4c004016a8dae999b9
treed9518ed0ef2012fd14567d03b500295dfb7fe7e0
parent7df0884ce144396fc151f2af7a73d5fb305f9b03
netfilter: {ip,ip6,arp}_tables: dont block bottom half more than necessary

We currently disable BH for the whole duration of get_counters()

On machines with a lot of cpus and large tables, this might be too long.

We can disable preemption during the whole function, and disable BH only
while fetching counters for the current cpu.

Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: Patrick McHardy <kaber@trash.net>
net/ipv4/netfilter/arp_tables.c
net/ipv4/netfilter/ip_tables.c
net/ipv6/netfilter/ip6_tables.c