mirror of https://github.com/xzeldon/htop.git
Fix memory accounting in Darwin.
htop currently expects m_size and m_resident in pages (Process.c). According to the proc_info.h header, the values returned by libproc are in bytes: http://www.opensource.apple.com/source/xnu/xnu-1456.1.26/bsd/sys/proc_info.h Eventually we should change the htop crossplatform API to expect memory in bytes, but this is the smaller change that should fix it. Closes #385.
This commit is contained in:
parent
3b9a4b1024
commit
e9b32eb62f
|
@ -327,8 +327,8 @@ void DarwinProcess_setFromLibprocPidinfo(DarwinProcess *proc, DarwinProcessList
|
||||||
|
|
||||||
proc->super.time = (pti.pti_total_system + pti.pti_total_user) / 10000000;
|
proc->super.time = (pti.pti_total_system + pti.pti_total_user) / 10000000;
|
||||||
proc->super.nlwp = pti.pti_threadnum;
|
proc->super.nlwp = pti.pti_threadnum;
|
||||||
proc->super.m_size = pti.pti_virtual_size / 1024;
|
proc->super.m_size = pti.pti_virtual_size / 1024 / PAGE_SIZE_KB;
|
||||||
proc->super.m_resident = pti.pti_resident_size / 1024;
|
proc->super.m_resident = pti.pti_resident_size / 1024 / PAGE_SIZE_KB;
|
||||||
proc->super.majflt = pti.pti_faults;
|
proc->super.majflt = pti.pti_faults;
|
||||||
proc->super.percent_mem = (double)pti.pti_resident_size * 100.0
|
proc->super.percent_mem = (double)pti.pti_resident_size * 100.0
|
||||||
/ (double)dpl->host_info.max_mem;
|
/ (double)dpl->host_info.max_mem;
|
||||||
|
|
Loading…
Reference in New Issue