svn commit: r284181 - in head/sys: amd64/amd64 arm/arm i386/i386

Alan Cox alc at FreeBSD.org
Tue Jun 9 18:04:30 UTC 2015


Author: alc
Date: Tue Jun  9 18:04:28 2015
New Revision: 284181
URL: https://svnweb.freebsd.org/changeset/base/284181

Log:
  Account for superpage mappings that are created by pmap_copy().

Modified:
  head/sys/amd64/amd64/pmap.c
  head/sys/arm/arm/pmap-v6-new.c
  head/sys/i386/i386/pmap.c

Modified: head/sys/amd64/amd64/pmap.c
==============================================================================
--- head/sys/amd64/amd64/pmap.c	Tue Jun  9 15:51:11 2015	(r284180)
+++ head/sys/amd64/amd64/pmap.c	Tue Jun  9 18:04:28 2015	(r284181)
@@ -4844,6 +4844,7 @@ pmap_copy(pmap_t dst_pmap, pmap_t src_pm
 			    PG_PS_FRAME, &lock))) {
 				*pde = srcptepaddr & ~PG_W;
 				pmap_resident_count_inc(dst_pmap, NBPDR / PAGE_SIZE);
+				atomic_add_long(&pmap_pde_mappings, 1);
 			} else
 				dstmpde->wire_count--;
 			continue;

Modified: head/sys/arm/arm/pmap-v6-new.c
==============================================================================
--- head/sys/arm/arm/pmap-v6-new.c	Tue Jun  9 15:51:11 2015	(r284180)
+++ head/sys/arm/arm/pmap-v6-new.c	Tue Jun  9 18:04:28 2015	(r284181)
@@ -5768,6 +5768,7 @@ pmap_copy(pmap_t dst_pmap, pmap_t src_pm
 				    ~PTE1_W;
 				dst_pmap->pm_stats.resident_count +=
 				    PTE1_SIZE / PAGE_SIZE;
+				pmap_pte1_mappings++;
 			}
 			continue;
 		} else if (!pte1_is_link(src_pte1))

Modified: head/sys/i386/i386/pmap.c
==============================================================================
--- head/sys/i386/i386/pmap.c	Tue Jun  9 15:51:11 2015	(r284180)
+++ head/sys/i386/i386/pmap.c	Tue Jun  9 18:04:28 2015	(r284181)
@@ -4035,6 +4035,7 @@ pmap_copy(pmap_t dst_pmap, pmap_t src_pm
 				    ~PG_W;
 				dst_pmap->pm_stats.resident_count +=
 				    NBPDR / PAGE_SIZE;
+				pmap_pde_mappings++;
 			}
 			continue;
 		}


More information about the svn-src-head mailing list