diff -Nru zabbix-1.8.3.orig/src/zabbix_agent/cpustat.c zabbix-1.8.3/src/zabbix_agent/cpustat.c --- zabbix-1.8.3.orig/src/zabbix_agent/cpustat.c 2010-08-16 17:19:32.000000000 +0900 +++ zabbix-1.8.3/src/zabbix_agent/cpustat.c 2010-08-18 22:31:39.000000000 +0900 @@ -601,8 +601,6 @@ { if(n < 0) n = MAX_CPU_HISTORY - 1; - sum += pcpus->cpu[i].h_usage[n]; - if(j == 60) /* cpu usage for last minute */ { pcpus->cpu[i].util1 = ((double)sum)/(double)j; @@ -611,6 +609,8 @@ { pcpus->cpu[i].util5 = ((double)sum)/(double)j; } + + sum += pcpus->cpu[i].h_usage[n]; } /* cpu usage for last fifteen minutes */ @@ -644,8 +644,6 @@ { if(n < 0) n = MAX_CPU_HISTORY - 1; - sum += pcpus->h_queue[n]; - if(j == 60) /* processor(s) load for last minute */ { pcpus->load1 = ((double)sum)/(double)j; @@ -654,6 +652,8 @@ { pcpus->load5 = ((double)sum)/(double)j; } + + sum += pcpus->h_queue[n]; } /* cpu usage for last fifteen minutes */