linux/net/netfilter/ipvs
Julian Anastasov 413c2d04e9 ipvs: convert dests to rcu
In previous commits the schedulers started to access
svc->destinations with _rcu list traversal primitives
because the IP_VS_WAIT_WHILE macro still plays the role of
grace period. Now it is time to finish the updating part,
i.e. adding and deleting of dests with _rcu suffix before
removing the IP_VS_WAIT_WHILE in next commit.

We use the same rule for conns as for the
schedulers: dests can be searched in RCU read-side critical
section where ip_vs_dest_hold can be called by ip_vs_bind_dest.

Some things are not perfect, for example, calling
functions like ip_vs_lookup_dest from updating code under
RCU, just because we use some function both from reader
and from updater.

Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Simon Horman <horms@verge.net.au>
2013-04-02 00:23:57 +02:00
..
ip_vs_app.c ipvs: convert app locks 2013-04-02 00:23:43 +02:00
ip_vs_conn.c ipvs: convert dests to rcu 2013-04-02 00:23:57 +02:00
ip_vs_core.c ipvs: preparations for using rcu in schedulers 2013-04-02 00:23:47 +02:00
ip_vs_ctl.c ipvs: convert dests to rcu 2013-04-02 00:23:57 +02:00
ip_vs_dh.c ipvs: do not expect result from done_service 2013-04-02 00:23:56 +02:00
ip_vs_est.c ipvs: fix some sparse warnings 2013-03-19 21:18:38 +09:00
ip_vs_ftp.c ipvs: convert app locks 2013-04-02 00:23:43 +02:00
ip_vs_lblc.c ipvs: convert sched_lock to spin lock 2013-04-02 00:23:56 +02:00
ip_vs_lblcr.c ipvs: convert sched_lock to spin lock 2013-04-02 00:23:56 +02:00
ip_vs_lc.c ipvs: convert lc scheduler to rcu 2013-04-02 00:23:50 +02:00
ip_vs_nfct.c ipvs: remove silly double assignment 2012-10-28 22:50:51 +01:00
ip_vs_nq.c ipvs: convert nq scheduler to rcu 2013-04-02 00:23:51 +02:00
ip_vs_pe_sip.c ipvs: convert locks used in persistence engines 2013-04-02 00:23:44 +02:00
ip_vs_pe.c ipvs: convert locks used in persistence engines 2013-04-02 00:23:44 +02:00
ip_vs_proto_ah_esp.c ipvs: API change to avoid rescan of IPv6 exthdr 2012-09-28 11:34:33 +09:00
ip_vs_proto_sctp.c ipvs: convert app locks 2013-04-02 00:23:43 +02:00
ip_vs_proto_tcp.c ipvs: convert app locks 2013-04-02 00:23:43 +02:00
ip_vs_proto_udp.c ipvs: convert app locks 2013-04-02 00:23:43 +02:00
ip_vs_proto.c ipvs: Trivial changes, use compressed IPv6 address in output 2012-09-28 11:33:52 +09:00
ip_vs_rr.c ipvs: convert sched_lock to spin lock 2013-04-02 00:23:56 +02:00
ip_vs_sched.c ipvs: do not expect result from done_service 2013-04-02 00:23:56 +02:00
ip_vs_sed.c ipvs: convert sed scheduler to rcu 2013-04-02 00:23:52 +02:00
ip_vs_sh.c ipvs: do not expect result from done_service 2013-04-02 00:23:56 +02:00
ip_vs_sync.c ipvs: convert dests to rcu 2013-04-02 00:23:57 +02:00
ip_vs_wlc.c ipvs: convert wlc scheduler to rcu 2013-04-02 00:23:54 +02:00
ip_vs_wrr.c ipvs: convert sched_lock to spin lock 2013-04-02 00:23:56 +02:00
ip_vs_xmit.c ipvs: optimize dst usage for real server 2013-04-02 00:23:42 +02:00
Kconfig ipvs: Complete IPv6 fragment handling for IPVS 2012-09-28 11:34:24 +09:00
Makefile IPVS: sip persistence engine 2010-10-04 22:45:24 +09:00