summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authordyson <dyson@FreeBSD.org>1996-06-26 05:05:52 +0000
committerdyson <dyson@FreeBSD.org>1996-06-26 05:05:52 +0000
commitff984cd1a5353fc88e8bff64cc2ed238100a84ae (patch)
tree06908a6b402e4fb12f689b33a11d8a506d059a88 /sys
parent8256b2dfc50ffe64f823df895480112cc0b5accc (diff)
downloadFreeBSD-src-ff984cd1a5353fc88e8bff64cc2ed238100a84ae.zip
FreeBSD-src-ff984cd1a5353fc88e8bff64cc2ed238100a84ae.tar.gz
When page table pages were removed from process address space, the
resident page stats were not being decremented. This mode corrects that problem.
Diffstat (limited to 'sys')
-rw-r--r--sys/amd64/amd64/pmap.c4
-rw-r--r--sys/i386/i386/pmap.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c
index 970bd3b..d016355 100644
--- a/sys/amd64/amd64/pmap.c
+++ b/sys/amd64/amd64/pmap.c
@@ -39,7 +39,7 @@
* SUCH DAMAGE.
*
* from: @(#)pmap.c 7.7 (Berkeley) 5/12/91
- * $Id: pmap.c,v 1.106 1996/06/18 01:22:06 bde Exp $
+ * $Id: pmap.c,v 1.107 1996/06/25 00:39:21 dyson Exp $
*/
/*
@@ -612,6 +612,7 @@ pmap_unwire_pte_hold(pmap_t pmap, vm_page_t m) {
* unmap the page table page
*/
pmap->pm_pdir[m->pindex] = 0;
+ --pmap->pm_stats.resident_count;
/*
* Do a pmap_update to make the invalidated mapping
* take effect immediately.
@@ -747,6 +748,7 @@ pmap_release_free_page(pmap, p)
* Remove the page table page from the processes address space.
*/
pde[p->pindex] = 0;
+ --pmap->pm_stats.resident_count;
if (p->hold_count) {
int *kvap;
diff --git a/sys/i386/i386/pmap.c b/sys/i386/i386/pmap.c
index 970bd3b..d016355 100644
--- a/sys/i386/i386/pmap.c
+++ b/sys/i386/i386/pmap.c
@@ -39,7 +39,7 @@
* SUCH DAMAGE.
*
* from: @(#)pmap.c 7.7 (Berkeley) 5/12/91
- * $Id: pmap.c,v 1.106 1996/06/18 01:22:06 bde Exp $
+ * $Id: pmap.c,v 1.107 1996/06/25 00:39:21 dyson Exp $
*/
/*
@@ -612,6 +612,7 @@ pmap_unwire_pte_hold(pmap_t pmap, vm_page_t m) {
* unmap the page table page
*/
pmap->pm_pdir[m->pindex] = 0;
+ --pmap->pm_stats.resident_count;
/*
* Do a pmap_update to make the invalidated mapping
* take effect immediately.
@@ -747,6 +748,7 @@ pmap_release_free_page(pmap, p)
* Remove the page table page from the processes address space.
*/
pde[p->pindex] = 0;
+ --pmap->pm_stats.resident_count;
if (p->hold_count) {
int *kvap;
OpenPOWER on IntegriCloud