This is to suppress the checkpatch.pl warning "Comparison to NULL
could be written". No functional changes here.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv4/proc.c | 32
net/sctp/proc.c | 2 +-
2 files changed, 17 insertions(+), 17 de
This is to introduce the generic interfaces for snmp_get_cpu_field{,64}.
It exchanges the two for-loops for collecting the percpu statistics data.
This can aggregate the data by going through all the items of each cpu
sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
Suggested-by: M
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/xfrm/xfrm_proc.c | 10 --
1 file changed, 8 insertions(+), 2 deletions(-)
diff
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/sctp/proc.c | 8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/ne
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Then snmp_seq_show is split into 2 parts to avoid build warning "the frame
size" larger than 1024.
Signed-off-by: Jia He <hejia...@gmail.
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/proc.c | 30 ++
1 file changed, 22 insertions(+), 8 del
The parameter items(is always ICMP6_MIB_MAX) is useless for
__snmp6_fill_statsdev
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/addrconf.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 2f1f5d4..3
eq_show considerred the stack usage is too
large
v3:
- introduce generic interface (suggested by Marcelo Ricardo Leitner)
- use max_t instead of self defined macro (suggested by David Miller)
v2:
- fix bug in udplite statistics.
- snmp_seq_show is split into 2 parts
Jia He (7):
net:snmp: Introduce
The parameter items(always ICMP6_MIB_MAX) is useless for __snmp6_fill_statsdev.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/addrconf.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 2f1f5d4..3
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/xfrm/xfrm_proc.c | 12 +---
1 file changed, 9 insertions(+), 3 deletions(-)
diff
This is to introduce the generic interfaces for snmp_get_cpu_field{,64}.
It exchanges the two for-loops for collecting the percpu statistics data.
This can aggregate the data by going through all the items of each cpu
sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
Suggested-by: M
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/proc.c | 32 +++-
1 file changed, 23 insertions(+), 9 del
This is to suppress the checkpatch.pl warning "Comparison to NULL
could be written". No functional changes here.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv4/proc.c | 32
net/sctp/proc.c | 2 +-
2 files changed, 17 insertions(+), 17 de
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/sctp/proc.c | 10 +++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git
nsiderred the stack usage is too
large
v3:
- introduce generic interface (suggested by Marcelo Ricardo Leitner)
- use max_t instead of self defined macro (suggested by David Miller)
v2:
- fix bug in udplite statistics.
- snmp_seq_show is split into 2 parts
Jia He (7):
net:snmp: Introduce generic interfaces
This is to use the generic interfaces snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Then snmp_seq_show is split into 2 parts to avoid build warning "the frame
size" larger than 1024.
Signed-off-by: Jia He <hejia...@gmail.
cardo Leitner)
- use max_t instead of self defined macro (suggested by David Miller)
v2:
- fix bug in udplite statistics.
- snmp_seq_show is split into 2 parts
Jia He (7):
net:snmp: Introduce generic interfaces for snmp_get_cpu_field{,64}
proc: Reduce cache miss in snmp_seq_show
proc: Reduce cache m
The parameter items(always ICMP6_MIB_MAX) is useless for __snmp6_fill_statsdev.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/addrconf.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index 2f1f5d4..3
This is to use the generic interface snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/xfrm/xfrm_proc.c | 10 --
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git
This is to use the generic interface snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/sctp/proc.c | 8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/ne
This is to use the generic interface snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/proc.c | 32 +++-
1 file changed, 23 insertions(+), 9 del
This is to suppress the checkpatch.pl warning "Comparison to NULL
could be written". No functional changes here.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv4/proc.c | 32
net/sctp/proc.c | 2 +-
2 files changed, 17 insertions(+), 17 de
This is to introduce the generic interfaces for snmp_get_cpu_field{,64}.
It exchanges the two for-loops for collecting the percpu statistics data.
This can aggregate the data by going through all the items of each cpu
sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
Suggested-by: M
This is to use the generic interface snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Then snmp_seq_show is split into 2 parts to avoid build warning "the frame
size" larger than 1024.
Signed-off-by: Jia He <hejia...@gmail.
]
6.868422769 seconds time elapsed
The cache-miss rate can be reduced from 15% to 2.9%
v3:
- introduce generic interface (suggested by Marcelo Ricardo Leitner)
- use max_t instead of self defined macro (suggested by David Miller)
v2:
- fix bug in udplite statistics.
- snmp_seq_show is
This is to suppress the checkpatch.pl warning "Comparison to NULL
could be written". No functional changes here.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv4/proc.c | 32
net/sctp/proc.c | 2 +-
2 files changed, 17 insertions(+), 17 de
This is to use the generic interface snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/proc.c | 32 +++-
1 file changed, 23 insertions(+), 9 del
The parameter items(always ICMP6_MIB_MAX) is useless for __snmp6_fill_statsdev.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/addrconf.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index f418d2e..e
This is to use the generic interface snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Then snmp_seq_show and netstat_seq_show are split into 2 parts to avoid build
warning "the frame size" larger than 1024 on s390.
Signed-off-
This is to use the generic interface snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/xfrm/xfrm_proc.c | 10 --
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git
This is to use the generic interface snmp_get_cpu_field{,64}_batch to
aggregate the data by going through all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/sctp/proc.c | 8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/ne
This is to introduced the generic batch interfaces for snmp_get_cpu_field{,64}.
It exchanges the two for-loops for collecting the percpu statistics data.
This can aggregate the data by going through all the items of each cpu
sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
Sug
This is to suppress the checkpatch.pl warning "Comparison to NULL
could be written". No functional changes here.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv4/proc.c | 44 ++--
net/sctp/proc.c | 4 ++--
net/xfrm/
This patch exchanges the two loop for collecting the percpu
statistics data. This can reduce cache misses by going through
all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/sctp/proc.c | 13 ++---
1 file changed, 10 insertions(+), 3 del
This patch exchanges the two loop for collecting the percpu statistics
data. This can aggregate the data by going through all the items of each
cpu sequentially. Then snmp_seq_show is split into 2 parts to avoid build
warning "the frame size" larger than 1024.
Signed-off-by: Jia
The parameter items(always ICMP6_MIB_MAX) is useless for __snmp6_fill_statsdev.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/addrconf.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index f418d2e..e
This patch exchanges the two loop for collecting the percpu
statistics data. This can reduce cache misses by going through
all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/xfrm/xfrm_proc.c | 17 +
1 file changed, 13 insertions
This patch exchanges the two loop for collecting the percpu
statistics data. This can reduce cache misses by going through
all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/proc.c | 47 ---
1 file c
]
6.868422769 seconds time elapsed
The cache-miss rate can be reduced from 15% to 2.9%
v2:
- 1/6 fix bug in udplite statistics.
- 1/6 snmp_seq_show is split into 2 parts
Jia He (6):
proc: Reduce cache miss in {snmp,netstat}_seq_show
proc: Reduce cache miss in snmp6_seq_show
pro
The parameter items(always ICMP6_MIB_MAX) is useless for __snmp6_fill_statsdev.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/addrconf.c | 12 ++--
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
index df8425f..0
This patch exchanges the two loop for collecting the percpu
statistics data. This can reduce cache misses by going through
all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv6/proc.c | 47 ---
1 file c
This patch exchanges the two loop for collecting the percpu statistics
data. This can aggregate the data by going through all the items of each
cpu sequentially. In snmp_seq_show, just use one buff copy to dislay the
Udp and UdpLite data because they are the same.
Signed-off-by: Jia He <he
This patch exchanges the two loop for collecting the percpu
statistics data. This can reduce cache misses by going through
all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/sctp/proc.c | 13 ++---
1 file changed, 10 insertions(+), 3 del
%]
464466 LLC-load-misses #0.25% of all LL-cache
hits[39.89%]
6.868422769 seconds time elapsed
The cache-miss rate can be reduced from 15% to 2.9%
Jia He (6):
proc: Reduce cache miss in {snmp,netstat}_seq_show
proc: Reduce cache miss in snmp6_seq_show
pro
This patch exchanges the two loop for collecting the percpu
statistics data. This can reduce cache misses by going through
all the items of each cpu sequentially.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/xfrm/xfrm_proc.c | 17 +
1 file changed, 13 insertions
This is to suppress the checkpatch.pl warning "Comparison to NULL
could be written". No functional changes here.
Signed-off-by: Jia He <hejia...@gmail.com>
---
net/ipv4/proc.c | 42 +-
net/sctp/proc.c | 4 ++--
net/xfrm/xfrm_pro
In commit a3a773726c9f ("net: Optimize snmp stat aggregation by walking
all the percpu data at once"), __snmp6_fill_stats64 had been optimized
by removing parameter items, so do the same for __snmp6_fill_statsdev.
Signed-off-by: Jia He <hejia...@gmail.com>
Cc: "
In PowerPC server with large number cpus, the loop index in smt=1 could be
reduced to 1/8 compared with smt=8.
Thus cache misses can be reduced.
Signed-off-by: Jia He <hejia...@gmail.com>
Cc: "David S. Miller" <da...@davemloft.net>
Cc: Alexey Kuznetsov <kuz...@ms2.in
This is the follow up work of commit a3a773726c9f ("net: Optimize
snmp stat aggregation by walking all the percpu data at once")
Jia He (3):
net: Remove unnecessary memset in __snmp6_fill_stats64
net: Replace for_each_possible_cpu with for_each_online_cpu
net: Remove the useless
buff[] will be assigned later, so memset is not necessary.
Signed-off-by: Jia He <hejia...@gmail.com>
Cc: "David S. Miller" <da...@davemloft.net>
Cc: Alexey Kuznetsov <kuz...@ms2.inr.ac.ru>
Cc: James Morris <jmor...@namei.org>
Cc: Hideaki YOSHIFUJI <yoshf..
50 matches
Mail list logo