diff options
author | Alexander Nedotsukov <bland@bbnest.net> | 2021-03-30 10:58:09 +0300 |
---|---|---|
committer | cgzones <cgzones@googlemail.com> | 2021-03-30 23:38:32 +0200 |
commit | 5afb57b49e7888adfb7e6cf522ca431785c6f5f5 (patch) | |
tree | d80d753c93c880b7d0bdb8765a3299e24f13ec48 /freebsd/FreeBSDProcessList.c | |
parent | 73f5ecf5289b4a6431d9cc945f523b36a5996a79 (diff) |
FreeBSD: improve actual processor calculation logic
Diffstat (limited to 'freebsd/FreeBSDProcessList.c')
-rw-r--r-- | freebsd/FreeBSDProcessList.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/freebsd/FreeBSDProcessList.c b/freebsd/FreeBSDProcessList.c index 628956d1..2e937669 100644 --- a/freebsd/FreeBSDProcessList.c +++ b/freebsd/FreeBSDProcessList.c @@ -572,7 +572,11 @@ void ProcessList_goThroughEntries(ProcessList* super, bool pauseProcessUpdate) { proc->percent_cpu = 100.0 * ((double)kproc->ki_pctcpu / (double)kernelFScale); proc->percent_mem = 100.0 * proc->m_resident / (double)(super->totalMem); - proc->processor = kproc->ki_lastcpu; + if (kproc->ki_stat == SRUN && kproc->ki_oncpu != NOCPU) { + proc->processor = kproc->ki_oncpu; + } else { + proc->processor = kproc->ki_lastcpu; + } proc->majflt = kproc->ki_cow; |