netfilter: CLUSTERIP: RCU conversion
authorEric Dumazet <eric.dumazet@gmail.com>
Tue, 15 Jun 2010 11:08:51 +0000 (13:08 +0200)
committerPatrick McHardy <kaber@trash.net>
Tue, 15 Jun 2010 11:08:51 +0000 (13:08 +0200)
commitd73f33b168831e53972fbf7c85db87950a41436c
tree5a3b5837b12728bc74fdf20505ffc1770b2a885e
parent0b041f8d1e6fb11a6134d37230da8c2182f99110
netfilter: CLUSTERIP: RCU conversion

- clusterip_lock becomes a spinlock
- lockless lookups
- kfree() deferred after RCU grace period
- rcu_barrier_bh() inserted in clusterip_tg_exit()

v2)
- As Patrick pointed out, we use atomic_inc_not_zero() in
clusterip_config_find_get().
- list_add_rcu() and list_del_rcu() variants are used.
- atomic_dec_and_lock() used in clusterip_config_entry_put()

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