Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 18 Jun 2010 01:17:17 +0000 (UTC)
From:      Sean Bruno <sbruno@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r209276 - head/lib/libkvm
Message-ID:  <201006180117.o5I1HHb5005308@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: sbruno
Date: Fri Jun 18 01:17:16 2010
New Revision: 209276
URL: http://svn.freebsd.org/changeset/base/209276

Log:
  Much closer approximation of the kernel's calculation of this value.
  
  Reviewed by:	alc
  Obtained from:	Yahoo Inc.

Modified:
  head/lib/libkvm/kvm_proc.c

Modified: head/lib/libkvm/kvm_proc.c
==============================================================================
--- head/lib/libkvm/kvm_proc.c	Thu Jun 17 22:47:44 2010	(r209275)
+++ head/lib/libkvm/kvm_proc.c	Fri Jun 18 01:17:16 2010	(r209276)
@@ -323,7 +323,12 @@ nopgrp:
 		(void)kvm_read(kd, (u_long)proc.p_vmspace,
 		    (char *)&vmspace, sizeof(vmspace));
 		kp->ki_size = vmspace.vm_map.size;
-		kp->ki_rssize = vmspace.vm_swrss; /* XXX */
+		/*
+		 * Approximate the kernel's method of calculating
+		 * this field.
+		 */
+#define		pmap_resident_count(pm) ((pm)->pm_stats.resident_count)
+		kp->ki_rssize = pmap_resident_count(&vmspace.vm_pmap); 
 		kp->ki_swrss = vmspace.vm_swrss;
 		kp->ki_tsize = vmspace.vm_tsize;
 		kp->ki_dsize = vmspace.vm_dsize;



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201006180117.o5I1HHb5005308>