diff options
author | Guy M. Broome <thrirhrafnir@gmail.com> | 2018-03-22 13:57:53 -0400 |
---|---|---|
committer | Hisham Muhammad <hisham@gobolinux.org> | 2018-03-26 15:14:12 -0300 |
commit | 70bc51a3872f6ae2d95d3d46d41197f36341a35b (patch) | |
tree | eb4135dcfd19277183d0c0ced798f77c4bfc940d /solaris | |
parent | 442b0d2576fa3c3f605495acb16580bef56b4237 (diff) |
Solaris: Fix virt and resident memory sizes. Was using KiB, needed pages.
Diffstat (limited to 'solaris')
-rw-r--r-- | solaris/SolarisProcessList.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/solaris/SolarisProcessList.c b/solaris/SolarisProcessList.c index 9a0db314..f46d6f71 100644 --- a/solaris/SolarisProcessList.c +++ b/solaris/SolarisProcessList.c @@ -299,6 +299,8 @@ void ProcessList_goThroughEntries(ProcessList* this) { fread(&_prusage,sizeof(prusage_t),1,fp); fclose(fp); + double kb_per_page = ((double)PAGE_SIZE / (double)1024.0); + if(!preExisting) { sproc->kernel = false; proc->pid = _psinfo.pr_pid; @@ -321,8 +323,8 @@ void ProcessList_goThroughEntries(ProcessList* this) { sproc->zname = SolarisProcessList_readZoneName(spl->kd,sproc); proc->majflt = _prusage.pr_majf; proc->minflt = _prusage.pr_minf; - proc->m_resident = (_psinfo.pr_rssize)/8; - proc->m_size = (_psinfo.pr_size)/8; + proc->m_resident = (long)(((double)_psinfo.pr_rssize)/kb_per_page); + proc->m_size = (long)(((double)_psinfo.pr_size)/kb_per_page); proc->priority = _psinfo.pr_lwp.pr_pri; proc->nice = _psinfo.pr_lwp.pr_nice; proc->processor = _psinfo.pr_lwp.pr_onpro; @@ -351,8 +353,8 @@ void ProcessList_goThroughEntries(ProcessList* this) { sproc->zname = SolarisProcessList_readZoneName(spl->kd,sproc); proc->majflt = _prusage.pr_majf; proc->minflt = _prusage.pr_minf; - proc->m_resident = (_psinfo.pr_rssize)/8; - proc->m_size = (_psinfo.pr_size)/8; + proc->m_resident = (long)(((double)_psinfo.pr_rssize)/kb_per_page); + proc->m_size = (long)(((double)_psinfo.pr_size)/kb_per_page); proc->priority = _psinfo.pr_lwp.pr_pri; proc->nice = _psinfo.pr_lwp.pr_nice; proc->processor = _psinfo.pr_lwp.pr_onpro; |