Better error messages for memory & swap

This commit is contained in:
Linus Dierheimer
2022-09-20 15:12:24 +02:00
parent ec4bd5d3a2
commit a9cb178315
6 changed files with 65 additions and 14 deletions
+8 -3
View File
@@ -5,11 +5,13 @@
void ffDetectMemoryImpl(FFMemoryResult* memory)
{
memset(memory, 0, sizeof(FFMemoryResult));
FILE* meminfo = fopen("/proc/meminfo", "r");
if(meminfo == NULL)
{
ffStrbufAppendS(&memory->ram.error, "Failed to open /proc/meminfo");
ffStrbufAppendS(&memory->swap.error, "Failed to open /proc/meminfo");
return;
}
char* line = NULL;
size_t len = 0;
@@ -41,7 +43,10 @@ void ffDetectMemoryImpl(FFMemoryResult* memory)
fclose(meminfo);
memory->ram.bytesTotal = memTotal * (uint64_t) 1024;
memory->ram.bytesUsed = (memTotal + shmem - memFree - buffers - cached - sReclaimable) * (uint64_t) 1024;
if(memory->ram.bytesTotal == 0)
ffStrbufAppendS(&memory->ram.error, "Failed to read MemTotal");
else
memory->ram.bytesUsed = (memTotal + shmem - memFree - buffers - cached - sReclaimable) * (uint64_t) 1024;
memory->swap.bytesTotal = swapTotal * (uint64_t) 1024;
memory->swap.bytesUsed = (swapTotal - swapFree) * (uint64_t) 1024;