Fixed smaps parsing with linux > 2.6.21.

Closes #449595.
Improved example.

svn path=/trunk/; revision=2610
This commit is contained in:
Benoît Dejean
2007-06-25 17:27:29 +00:00
parent 6b0bafcafb
commit 1e0ba1d7aa
2 changed files with 4 additions and 5 deletions

View File

@@ -140,9 +140,9 @@ main (int argc, char *argv [])
}
g_print("smaps flags:%#llx size:%llu rss:%llu "
"shared_clean:%llu shared_dirty:%llu "
"private_clean:%llu private_dirty: %llu\n",
g_print("smaps flags:%#llx size:%lluKiB rss:%lluKiB "
"shared_clean:%lluKib shared_dirty:%lluKiB "
"private_clean:%lluKiB private_dirty: %lluKiB\n",
maps[i].flags,
maps[i].size >> 10,
maps[i].rss >> 10,

View File

@@ -164,11 +164,10 @@ glibtop_get_proc_map_s (glibtop *server, glibtop_proc_map *buf, pid_t pid)
if (getline(&line, &line_size, maps) == -1)
break;
/* 8 arguments */
if (sscanf(line, PROC_MAPS_FORMAT,
&start, &end, flags, &offset,
&dev_major, &dev_minor, &inode, &line_end) != 7)
break;
continue;
filename = line + line_end;
g_strstrip(filename);