linux-stable/net/netfilter/ipvs
Hans Schillstrom b17fc9963f IPVS: netns, ip_vs_stats and its procfs
The statistic counter locks for every packet are now removed,
and that statistic is now per CPU, i.e. no locks needed.
However summing is made in ip_vs_est into ip_vs_stats struct
which is moved to ipvs struc.

procfs, ip_vs_stats now have a "per cpu" count and a grand total.
A new function seq_file_single_net() in ip_vs.h created for handling of
single_open_net() since it does not place net ptr in a struct, like others.

/var/lib/lxc # cat /proc/net/ip_vs_stats_percpu
       Total Incoming Outgoing         Incoming         Outgoing
CPU    Conns  Packets  Packets            Bytes            Bytes
  0        0        3        1               9D               34
  1        0        1        2               49               70
  2        0        1        2               34               76
  3        1        2        2               70               74
  ~        1        7        7              18A              18E

     Conns/s   Pkts/s   Pkts/s          Bytes/s          Bytes/s
           0        0        0                0                0

*v3
ip_vs_stats reamains as before, instead ip_vs_stats_percpu is added.
u64 seq lock added

*v4
Bug correction inbytes and outbytes as own vars..
per_cpu counter for all stats now as suggested by Julian.

[horms@verge.net.au: removed whitespace-change-only hunk]
Signed-off-by: Hans Schillstrom <hans.schillstrom@ericsson.com>
Acked-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Simon Horman <horms@verge.net.au>
2011-01-13 10:30:28 +09:00
..
ip_vs_app.c IPVS: netns awareness to ip_vs_app 2011-01-13 10:30:28 +09:00
ip_vs_conn.c IPVS: netns, common protocol changes and use of appcnt. 2011-01-13 10:30:27 +09:00
ip_vs_core.c IPVS: netns, ip_vs_stats and its procfs 2011-01-13 10:30:28 +09:00
ip_vs_ctl.c IPVS: netns, ip_vs_stats and its procfs 2011-01-13 10:30:28 +09:00
ip_vs_dh.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ip_vs_est.c IPVS: netns, ip_vs_stats and its procfs 2011-01-13 10:30:28 +09:00
ip_vs_ftp.c IPVS: netns awareness to ip_vs_app 2011-01-13 10:30:28 +09:00
ip_vs_lblc.c IPVS: netns awarness to lblc sheduler 2011-01-13 10:30:27 +09:00
ip_vs_lblcr.c IPVS: netns awarness to lblcr sheduler 2011-01-13 10:30:27 +09:00
ip_vs_lc.c IPVS: use pr_err and friends instead of IP_VS_ERR and friends 2009-08-02 18:29:30 -07:00
ip_vs_nfct.c IPVS: Add struct ip_vs_conn_param 2010-10-04 22:45:24 +09:00
ip_vs_nq.c IPVS: use pr_err and friends instead of IP_VS_ERR and friends 2009-08-02 18:29:30 -07:00
ip_vs_pe.c IPVS: Backup, Adding Version 1 receive capability 2010-11-25 10:42:59 +09:00
ip_vs_pe_sip.c IPVS: skb defrag in L7 helpers 2010-11-25 10:42:58 +09:00
ip_vs_proto.c IPVS: netns, use ip_vs_proto_data as param. 2011-01-13 10:30:27 +09:00
ip_vs_proto_ah_esp.c IPVS: netns, use ip_vs_proto_data as param. 2011-01-13 10:30:27 +09:00
ip_vs_proto_sctp.c IPVS: netns awareness to ip_vs_app 2011-01-13 10:30:28 +09:00
ip_vs_proto_tcp.c IPVS: netns awareness to ip_vs_app 2011-01-13 10:30:28 +09:00
ip_vs_proto_udp.c IPVS: netns awareness to ip_vs_app 2011-01-13 10:30:28 +09:00
ip_vs_rr.c IPVS: use pr_err and friends instead of IP_VS_ERR and friends 2009-08-02 18:29:30 -07:00
ip_vs_sched.c IPVS: ip_vs_{un,}bind_scheduler NULL arguments 2010-10-04 22:45:24 +09:00
ip_vs_sed.c IPVS: use pr_err and friends instead of IP_VS_ERR and friends 2009-08-02 18:29:30 -07:00
ip_vs_sh.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ip_vs_sync.c IPVS: netns awareness to ip_vs_sync 2011-01-13 10:30:28 +09:00
ip_vs_wlc.c IPVS: use pr_fmt 2009-07-30 14:29:44 -07:00
ip_vs_wrr.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
ip_vs_xmit.c Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6 into HEAD 2011-01-13 10:29:21 +09:00
Kconfig netfilter: fix IP_VS dependencies 2010-11-18 13:14:33 -08:00
Makefile IPVS: sip persistence engine 2010-10-04 22:45:24 +09:00