[linux|freebsd] Fix condition to calculate CPU usage

This commit is contained in:
Mike Massonnet
2010-05-21 15:29:45 +02:00
parent d212ce6b43
commit 6b8162b4e9
2 changed files with 12 additions and 4 deletions

View File

@@ -93,8 +93,12 @@ get_cpu_usage (gushort *cpu_count, gfloat *cpu_user, gfloat *cpu_system)
cur_jiffies_system = system;
cur_jiffies = cur_jiffies_user + cur_jiffies_system + idle;
*cpu_user = (old_jiffies > 0) ? (cur_jiffies_user - old_jiffies_user) * 100 / (gdouble)(cur_jiffies - old_jiffies) : 0;
*cpu_system = (old_jiffies > 0) ? (cur_jiffies_system - old_jiffies_system) * 100 / (gdouble)(cur_jiffies - old_jiffies) : 0;
*cpu_user = *cpu_system = 0.0;
if (cur_jiffies > old_jiffies)
{
*cpu_user = (cur_jiffies_user - old_jiffies_user) * 100 / (gdouble)(cur_jiffies - old_jiffies);
*cpu_system = (cur_jiffies_system - old_jiffies_system) * 100 / (gdouble)(cur_jiffies - old_jiffies);
}
*cpu_count = _cpu_count;
return TRUE;