ipvs: add rcu protection to stats
authorJulian Anastasov <ja@ssi.bg>
Tue, 22 Nov 2022 16:45:59 +0000 (18:45 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Sat, 10 Dec 2022 21:44:42 +0000 (22:44 +0100)
commit5df7d714d8cbcce7642936cc0f6532f0c4c3d197
tree4679d2780197bfe157385e4059ad76720f48fcf0
parent895fa59647cd64da99eebd1199cf27ecce08c17c
ipvs: add rcu protection to stats

In preparation to using RCU locking for the list
with estimators, make sure the struct ip_vs_stats
are released after RCU grace period by using RCU
callbacks. This affects ipvs->tot_stats where we
can not use RCU callbacks for ipvs, so we use
allocated struct ip_vs_stats_rcu. For services
and dests we force RCU callbacks for all cases.

Signed-off-by: Julian Anastasov <ja@ssi.bg>
Cc: yunhong-cgl jiang <xintian1976@gmail.com>
Cc: "dust.li" <dust.li@linux.alibaba.com>
Reviewed-by: Jiri Wiesner <jwiesner@suse.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
include/net/ip_vs.h
net/netfilter/ipvs/ip_vs_core.c
net/netfilter/ipvs/ip_vs_ctl.c