diff --git a/src/os/darwin/darwin_sigar.c b/src/os/darwin/darwin_sigar.c index a4bb869b..f4c60a46 100644 --- a/src/os/darwin/darwin_sigar.c +++ b/src/os/darwin/darwin_sigar.c @@ -222,7 +222,6 @@ int sigar_cpu_get(sigar_t *sigar, sigar_cpu_t *cpu) cpu->total = cpu->user + cpu->nice + cpu->sys + cpu->idle; - #else /*XXX*/ cpu->user = 0; @@ -238,7 +237,14 @@ int sigar_cpu_get(sigar_t *sigar, sigar_cpu_t *cpu) int sigar_cpu_list_get(sigar_t *sigar, sigar_cpu_list_t *cpulist) { - return SIGAR_ENOTIMPL; + sigar_cpu_t *cpu; + + sigar_cpu_list_create(cpulist); + + /* XXX multi cpu */ + cpu = &cpulist->data[cpulist->number++]; + + return sigar_cpu_get(sigar, cpu); } int sigar_uptime_get(sigar_t *sigar,