diff options
| author | Harald Welte <laforge@netfilter.org> | 2004-09-23 00:34:29 -0700 |
|---|---|---|
| committer | David S. Miller <davem@kernel.bkbits.net> | 2004-09-23 00:34:29 -0700 |
| commit | 6c7dd95fa77ce9545f85d0f708ef6d09f4b55bde (patch) | |
| tree | 21f7b0eed687f5d1fbba074248d10cd6da992424 | |
| parent | 2cda28821a831dae6d9bd56cc7e8ee95a7fd181a (diff) | |
[NETFILTER]: add sysctl to read out the number of current connections
Apparently a lot of scripts use a construct like
cat /proc/net/ip_conntrack | wc -l
which has a negative impact on system performance due to all the locking
required.
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
| -rw-r--r-- | include/linux/sysctl.h | 1 | ||||
| -rw-r--r-- | net/ipv4/netfilter/ip_conntrack_standalone.c | 8 |
2 files changed, 9 insertions, 0 deletions
diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h index bec509e874de..e55ff44180b8 100644 --- a/include/linux/sysctl.h +++ b/include/linux/sysctl.h @@ -424,6 +424,7 @@ enum NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_SENT=24, NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_RECD=25, NET_IPV4_NF_CONNTRACK_SCTP_TIMEOUT_SHUTDOWN_ACK_SENT=26, + NET_IPV4_NF_CONNTRACK_COUNT=27, }; /* /proc/sys/net/ipv6 */ diff --git a/net/ipv4/netfilter/ip_conntrack_standalone.c b/net/ipv4/netfilter/ip_conntrack_standalone.c index f3aaf0487cc6..195f7b2662e9 100644 --- a/net/ipv4/netfilter/ip_conntrack_standalone.c +++ b/net/ipv4/netfilter/ip_conntrack_standalone.c @@ -516,6 +516,14 @@ static ctl_table ip_ct_sysctl_table[] = { .proc_handler = &proc_dointvec, }, { + .ctl_name = NET_IPV4_NF_CONNTRACK_COUNT, + .procname = "ip_conntrack_count", + .data = &ip_conntrack_count, + .maxlen = sizeof(int), + .mode = 0444, + .proc_handler = &proc_dointvec, + }, + { .ctl_name = NET_IPV4_NF_CONNTRACK_BUCKETS, .procname = "ip_conntrack_buckets", .data = &ip_conntrack_htable_size, |
