@@ -1927,8 +1927,7 @@ get_process_mem_usage(void)
19271927 }
19281928
19291929#elif __linux__
1930- // Linux, use smaps_rollup (Kernel >= 4.4) for RSS + Swap
1931- FILE * fp = fopen ("/proc/self/smaps_rollup" , "r" );
1930+ FILE * fp = fopen ("/proc/self/status" , "r" );
19321931 if (fp == NULL ) {
19331932 return -1 ;
19341933 }
@@ -1938,11 +1937,11 @@ get_process_mem_usage(void)
19381937 long long swap_kb = -1 ;
19391938
19401939 while (fgets (line_buffer , sizeof (line_buffer ), fp ) != NULL ) {
1941- if (rss_kb == -1 && strncmp (line_buffer , "Rss :" , 4 ) == 0 ) {
1942- sscanf (line_buffer + 4 , "%lld" , & rss_kb );
1940+ if (rss_kb == -1 && strncmp (line_buffer , "VmRSS :" , 6 ) == 0 ) {
1941+ sscanf (line_buffer + 6 , "%lld" , & rss_kb );
19431942 }
1944- else if (swap_kb == -1 && strncmp (line_buffer , "Swap :" , 5 ) == 0 ) {
1945- sscanf (line_buffer + 5 , "%lld" , & swap_kb );
1943+ else if (swap_kb == -1 && strncmp (line_buffer , "VmSwap :" , 7 ) == 0 ) {
1944+ sscanf (line_buffer + 7 , "%lld" , & swap_kb );
19461945 }
19471946 if (rss_kb != -1 && swap_kb != -1 ) {
19481947 break ; // Found both
0 commit comments