svn commit: r227289 - projects/armv6/sys/arm/arm
Olivier Houchard
cognet at FreeBSD.org
Mon Nov 7 00:27:26 UTC 2011
Author: cognet
Date: Mon Nov 7 00:27:25 2011
New Revision: 227289
URL: http://svn.freebsd.org/changeset/base/227289
Log:
In pmap_modify_pv(), if we're removing the PVF_WRITE flag, don't forget
to check if there's any writable mapping left for the page, and remove the
PGA_WRITEABLE flag if there's not any.
Modified:
projects/armv6/sys/arm/arm/pmap-v6.c
Modified: projects/armv6/sys/arm/arm/pmap-v6.c
==============================================================================
--- projects/armv6/sys/arm/arm/pmap-v6.c Mon Nov 7 00:12:16 2011 (r227288)
+++ projects/armv6/sys/arm/arm/pmap-v6.c Mon Nov 7 00:27:25 2011 (r227289)
@@ -1103,6 +1103,16 @@ pmap_modify_pv(struct vm_page *pg, pmap_
else
--pm->pm_stats.wired_count;
}
+ if ((oflags & PVF_WRITE) && !(flags & PVF_WRITE)) {
+ TAILQ_FOREACH(npv, &pg->md.pv_list, pv_list) {
+ if (npv->pv_flags & PVF_WRITE)
+ break;
+ }
+ if (!npv) {
+ pg->md.pvh_attrs &= ~PVF_MOD;
+ vm_page_aflag_clear(pg, PGA_WRITEABLE);
+ }
+ }
return (oflags);
}
More information about the svn-src-projects
mailing list