From 23e753fd473081d2c559d6ef0161c839fcfbdcce Mon Sep 17 00:00:00 2001 From: Craig Small Date: Fri, 23 Dec 2011 00:44:23 +1100 Subject: [PATCH] Fixed pmap -x Kbytes column The Kbytes column when using the pmap -x flag would always be zero. This was because the diff variable was reset before it could be printed. pmap with no -x was not impacted by this bug or fix. --- pmap.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pmap.c b/pmap.c index c92737d8..6555b841 100644 --- a/pmap.c +++ b/pmap.c @@ -138,6 +138,7 @@ static int one_proc(proc_t *p){ unsigned long long total_rss = 0ull; unsigned long long total_private_dirty = 0ull; unsigned long long total_shared_dirty = 0ull; + unsigned KLONG diff=0; // Overkill, but who knows what is proper? The "w" prog // uses the tty width to determine this. @@ -167,7 +168,7 @@ static int one_proc(proc_t *p){ while(fgets(mapbuf,sizeof mapbuf,fp)){ char flags[32]; char *tmp; // to clean up unprintables - unsigned KLONG start, end, diff=0; + unsigned KLONG start, end; unsigned long long file_offset, inode; unsigned dev_major, dev_minor; unsigned long long smap_value; @@ -206,6 +207,7 @@ static int one_proc(proc_t *p){ ); /* reset some counters */ rss = shared_dirty = private_dirty = 0ull; + diff=0; continue; } /* Other keys */