diff options
author | ae <ae@FreeBSD.org> | 2013-07-09 10:08:13 +0000 |
---|---|---|
committer | ae <ae@FreeBSD.org> | 2013-07-09 10:08:13 +0000 |
commit | d467a4169ad67053fa2f4089b8d85a8cbc46f800 (patch) | |
tree | a6d4cb3c25de0aa45541f9133adc58248c39db5f /sys/netipsec/ipsec.c | |
parent | 430162610d43c9304f918e90063b5da86a8a5ad1 (diff) | |
download | FreeBSD-src-d467a4169ad67053fa2f4089b8d85a8cbc46f800.zip FreeBSD-src-d467a4169ad67053fa2f4089b8d85a8cbc46f800.tar.gz |
Migrate structs ahstat, espstat, ipcompstat, ipipstat, pfkeystat,
ipsec4stat, ipsec6stat to PCPU counters.
Diffstat (limited to 'sys/netipsec/ipsec.c')
-rw-r--r-- | sys/netipsec/ipsec.c | 30 |
1 files changed, 18 insertions, 12 deletions
diff --git a/sys/netipsec/ipsec.c b/sys/netipsec/ipsec.c index e9e5f74..4a22f32 100644 --- a/sys/netipsec/ipsec.c +++ b/sys/netipsec/ipsec.c @@ -104,7 +104,13 @@ VNET_DEFINE(int, ipsec_debug) = 0; #endif /* NB: name changed so netstat doesn't use it. */ -VNET_DEFINE(struct ipsecstat, ipsec4stat); +VNET_PCPUSTAT_DEFINE(struct ipsecstat, ipsec4stat); +VNET_PCPUSTAT_SYSINIT(ipsec4stat); + +#ifdef VIMAGE +VNET_PCPUSTAT_SYSUNINIT(ipsec4stat); +#endif /* VIMAGE */ + VNET_DEFINE(int, ip4_ah_offsetmask) = 0; /* maybe IP_DF? */ /* DF bit on encap. 0: clear 1: set 2: copy */ VNET_DEFINE(int, ip4_ipsec_dfbit) = 0; @@ -167,9 +173,8 @@ SYSCTL_VNET_INT(_net_inet_ipsec, IPSECCTL_DEBUG, debug, SYSCTL_VNET_INT(_net_inet_ipsec, OID_AUTO, crypto_support, CTLFLAG_RW, &VNET_NAME(crypto_support), 0, "Crypto driver selection."); -SYSCTL_VNET_STRUCT(_net_inet_ipsec, OID_AUTO, ipsecstats, - CTLFLAG_RD, &VNET_NAME(ipsec4stat), ipsecstat, - "IPsec IPv4 statistics."); +SYSCTL_VNET_PCPUSTAT(_net_inet_ipsec, OID_AUTO, ipsecstats, struct ipsecstat, + ipsec4stat, "IPsec IPv4 statistics."); #ifdef REGRESSION /* @@ -191,7 +196,13 @@ SYSCTL_VNET_INT(_net_inet_ipsec, OID_AUTO, test_integrity, #endif #ifdef INET6 -VNET_DEFINE(struct ipsecstat, ipsec6stat); +VNET_PCPUSTAT_DEFINE(struct ipsecstat, ipsec6stat); +VNET_PCPUSTAT_SYSINIT(ipsec6stat); + +#ifdef VIMAGE +VNET_PCPUSTAT_SYSUNINIT(ipsec6stat); +#endif /* VIMAGE */ + VNET_DEFINE(int, ip6_esp_trans_deflev) = IPSEC_LEVEL_USE; VNET_DEFINE(int, ip6_esp_net_deflev) = IPSEC_LEVEL_USE; VNET_DEFINE(int, ip6_ah_trans_deflev) = IPSEC_LEVEL_USE; @@ -201,10 +212,6 @@ VNET_DEFINE(int, ip6_ipsec_ecn) = 0; /* ECN ignore(-1)/forbidden(0)/allowed(1) * SYSCTL_DECL(_net_inet6_ipsec6); /* net.inet6.ipsec6 */ -#ifdef COMPAT_KAME -SYSCTL_OID(_net_inet6_ipsec6, IPSECCTL_STATS, stats, CTLFLAG_RD, - 0, 0, compat_ipsecstats_sysctl, "S", "IPsec IPv6 statistics."); -#endif /* COMPAT_KAME */ SYSCTL_VNET_INT(_net_inet6_ipsec6, IPSECCTL_DEF_POLICY, def_policy, CTLFLAG_RW, &VNET_NAME(ip4_def_policy).policy, 0, "IPsec default policy."); @@ -226,9 +233,8 @@ SYSCTL_VNET_INT(_net_inet6_ipsec6, IPSECCTL_ECN, SYSCTL_VNET_INT(_net_inet6_ipsec6, IPSECCTL_DEBUG, debug, CTLFLAG_RW, &VNET_NAME(ipsec_debug), 0, "Enable IPsec debugging output when set."); -SYSCTL_VNET_STRUCT(_net_inet6_ipsec6, IPSECCTL_STATS, - ipsecstats, CTLFLAG_RD, &VNET_NAME(ipsec6stat), ipsecstat, - "IPsec IPv6 statistics."); +SYSCTL_VNET_PCPUSTAT(_net_inet6_ipsec6, IPSECCTL_STATS, ipsecstats, + struct ipsecstat, ipsec6stat, "IPsec IPv6 statistics."); #endif /* INET6 */ static int ipsec_setspidx_inpcb __P((struct mbuf *, struct inpcb *)); |