Changeset View
Changeset View
Standalone View
Standalone View
lib/libc/gen/getloadavg.c
Show First 20 Lines • Show All 54 Lines • ▼ Show 20 Lines | getloadavg(double loadavg[], int nelem) | ||||
size_t size; | size_t size; | ||||
mib[0] = CTL_VM; | mib[0] = CTL_VM; | ||||
mib[1] = VM_LOADAVG; | mib[1] = VM_LOADAVG; | ||||
size = sizeof(loadinfo); | size = sizeof(loadinfo); | ||||
if (sysctl(mib, 2, &loadinfo, &size, NULL, 0) < 0) | if (sysctl(mib, 2, &loadinfo, &size, NULL, 0) < 0) | ||||
return (-1); | return (-1); | ||||
nelem = MIN(nelem, sizeof(loadinfo.ldavg) / sizeof(fixpt_t)); | nelem = MIN((size_t)nelem, sizeof(loadinfo.ldavg) / sizeof(fixpt_t)); | ||||
for (i = 0; i < nelem; i++) | for (i = 0; i < nelem; i++) | ||||
loadavg[i] = (double) loadinfo.ldavg[i] / loadinfo.fscale; | loadavg[i] = (double) loadinfo.ldavg[i] / loadinfo.fscale; | ||||
return (nelem); | return (nelem); | ||||
} | } |