|
@@ -59,12 +59,13 @@ static void ip_vs_read_cpu_stats(struct ip_vs_stats_user *sum,
|
|
|
struct ip_vs_cpu_stats __percpu *stats)
|
|
|
{
|
|
|
int i;
|
|
|
+ bool add = false;
|
|
|
|
|
|
for_each_possible_cpu(i) {
|
|
|
struct ip_vs_cpu_stats *s = per_cpu_ptr(stats, i);
|
|
|
unsigned int start;
|
|
|
__u64 inbytes, outbytes;
|
|
|
- if (i) {
|
|
|
+ if (add) {
|
|
|
sum->conns += s->ustats.conns;
|
|
|
sum->inpkts += s->ustats.inpkts;
|
|
|
sum->outpkts += s->ustats.outpkts;
|
|
@@ -76,6 +77,7 @@ static void ip_vs_read_cpu_stats(struct ip_vs_stats_user *sum,
|
|
|
sum->inbytes += inbytes;
|
|
|
sum->outbytes += outbytes;
|
|
|
} else {
|
|
|
+ add = true;
|
|
|
sum->conns = s->ustats.conns;
|
|
|
sum->inpkts = s->ustats.inpkts;
|
|
|
sum->outpkts = s->ustats.outpkts;
|