Author: alc
Date: Sat May 10 19:47:00 2014
New Revision: 265850
URL: http://svnweb.freebsd.org/changeset/base/265850

Log:
  About 9% of the pmap_protect() calls being performed by vm_map_copy_entry()
  are unnecessary.  Eliminate the unnecessary calls.
  
  Reviewed by:  kib
  MFC after:    1 week
  Sponsored by: EMC / Isilon Storage Division

Modified:
  head/sys/vm/vm_map.c

Modified: head/sys/vm/vm_map.c
==============================================================================
--- head/sys/vm/vm_map.c        Sat May 10 19:18:49 2014        (r265849)
+++ head/sys/vm/vm_map.c        Sat May 10 19:47:00 2014        (r265850)
@@ -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,
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to