Commit a84aa2e7 authored by Hisham Muhammad's avatar Hisham Muhammad
Browse files

Cached memory calculations, take 2.

Thanks to @OmegaPhil for discussion and reviewing.
parent 5bc1f5ed
...@@ -621,7 +621,6 @@ static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, const char* ...@@ -621,7 +621,6 @@ static bool LinuxProcessList_recurseProcTree(LinuxProcessList* this, const char*
static inline void LinuxProcessList_scanMemoryInfo(ProcessList* this) { static inline void LinuxProcessList_scanMemoryInfo(ProcessList* this) {
unsigned long long int swapFree = 0; unsigned long long int swapFree = 0;
unsigned long long int slab = 0;
unsigned long long int shmem = 0; unsigned long long int shmem = 0;
unsigned long long int sreclaimable = 0; unsigned long long int sreclaimable = 0;
...@@ -651,9 +650,6 @@ static inline void LinuxProcessList_scanMemoryInfo(ProcessList* this) { ...@@ -651,9 +650,6 @@ static inline void LinuxProcessList_scanMemoryInfo(ProcessList* this) {
if (tryRead("SwapTotal:", &this->totalSwap)) {} if (tryRead("SwapTotal:", &this->totalSwap)) {}
else if (tryRead("SwapFree:", &swapFree)) {} else if (tryRead("SwapFree:", &swapFree)) {}
break; break;
case 'l':
if (tryRead("Slab:", &slab)) {}
break;
case 'h': case 'h':
if (tryRead("Shmem:", &shmem)) {} if (tryRead("Shmem:", &shmem)) {}
break; break;
...@@ -666,8 +662,8 @@ static inline void LinuxProcessList_scanMemoryInfo(ProcessList* this) { ...@@ -666,8 +662,8 @@ static inline void LinuxProcessList_scanMemoryInfo(ProcessList* this) {
#undef tryRead #undef tryRead
} }
this->usedMem = this->totalMem - this->freeMem + (slab - sreclaimable) + shmem; this->usedMem = this->totalMem - this->freeMem;
this->cachedMem = this->cachedMem + sreclaimable; this->cachedMem = this->cachedMem + sreclaimable - shmem;
this->usedSwap = this->totalSwap - swapFree; this->usedSwap = this->totalSwap - swapFree;
fclose(file); fclose(file);
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment