svn commit: r266315 - stable/10/sys/vm

Alan Cox alc at FreeBSD.org
Sat May 17 14:35:18 UTC 2014


Author: alc
Date: Sat May 17 14:35:18 2014
New Revision: 266315
URL: http://svnweb.freebsd.org/changeset/base/266315

Log:
  MFC r265850
    About 9% of the pmap_protect() calls being performed by
    vm_map_copy_entry() are unnecessary.
    Eliminate the unnecessary calls.

Modified:
  stable/10/sys/vm/vm_map.c
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/vm/vm_map.c
==============================================================================
--- stable/10/sys/vm/vm_map.c	Sat May 17 14:22:37 2014	(r266314)
+++ stable/10/sys/vm/vm_map.c	Sat May 17 14:35:18 2014	(r266315)
@@ -3023,7 +3023,8 @@ vm_map_copy_entry(
 		 * If the source entry is marked needs_copy, it is already
 		 * write-protected.
 		 */
-		if ((src_entry->eflags & MAP_ENTRY_NEEDS_COPY) == 0) {
+		if ((src_entry->eflags & MAP_ENTRY_NEEDS_COPY) == 0 &&
+		    (src_entry->protection & VM_PROT_WRITE) != 0) {
 			pmap_protect(src_map->pmap,
 			    src_entry->start,
 			    src_entry->end,


More information about the svn-src-all mailing list