summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron Marcher <me@drkhsh.at>2018-05-07 11:39:59 +0200
committerAaron Marcher <me@drkhsh.at>2018-05-07 11:39:59 +0200
commitb3330d849def11137a6905675e123b7ba9cce438 (patch)
tree3da38a50938b7ae9ac1c70a65c74c39d36b4d7ae
parent16a97fbca129bca5656f76191c1b324b1649ec22 (diff)
cpu: Simplify functions
-rw-r--r--components/cpu.c30
1 files changed, 14 insertions, 16 deletions
diff --git a/components/cpu.c b/components/cpu.c
index 3b29b8b..6551f31 100644
--- a/components/cpu.c
+++ b/components/cpu.c
@@ -19,9 +19,8 @@
const char *
cpu_perc(void)
{
- int perc;
- static long double a[7];
static int valid;
+ static long double a[7];
long double b[7];
memcpy(b, a, sizeof(b));
@@ -35,12 +34,11 @@
return NULL;
}
- perc = 100 * ((b[0] + b[1] + b[2] + b[5] + b[6]) -
- (a[0] + a[1] + a[2] + a[5] + a[6])) /
- ((b[0] + b[1] + b[2] + b[3] + b[4] + b[5] + b[6]) -
- (a[0] + a[1] + a[2] + a[3] + a[4] + a[5] + a[6]));
-
- return bprintf("%d", perc);
+ return bprintf("%d", 100 *
+ ((b[0] + b[1] + b[2] + b[5] + b[6]) -
+ (a[0] + a[1] + a[2] + a[5] + a[6])) /
+ ((b[0] + b[1] + b[2] + b[3] + b[4] + b[5] + b[6]) -
+ (a[0] + a[1] + a[2] + a[3] + a[4] + a[5] + a[6])));
}
#elif defined(__OpenBSD__)
#include <sys/param.h>
@@ -69,7 +67,7 @@
const char *
cpu_perc(void)
{
- int mib[2], perc;
+ int mib[2];
static int valid;
static long int a[CPUSTATES];
long int b[CPUSTATES];
@@ -90,12 +88,12 @@
return NULL;
}
- perc = 100 *
- ((a[CP_USER] + a[CP_NICE] + a[CP_SYS] + a[CP_INTR]) -
- (b[CP_USER] + b[CP_NICE] + b[CP_SYS] + b[CP_INTR])) /
- ((a[CP_USER] + a[CP_NICE] + a[CP_SYS] + a[CP_INTR] + a[CP_IDLE]) -
- (b[CP_USER] + b[CP_NICE] + b[CP_SYS] + b[CP_INTR] + b[CP_IDLE]));
-
- return bprintf("%d", perc);
+ return bprintf("%d", 100 *
+ ((a[CP_USER] + a[CP_NICE] + a[CP_SYS] + a[CP_INTR]) -
+ (b[CP_USER] + b[CP_NICE] + b[CP_SYS] + b[CP_INTR])) /
+ ((a[CP_USER] + a[CP_NICE] + a[CP_SYS] + a[CP_INTR] +
+ a[CP_IDLE]) -
+ (b[CP_USER] + b[CP_NICE] + b[CP_SYS] + b[CP_INTR] +
+ b[CP_IDLE])));
}
#endif