Author: kib
Date: Tue May  5 08:16:47 2015
New Revision: 282458
URL: https://svnweb.freebsd.org/changeset/base/282458

Log:
  MFC r282128:
  Do not sleep waiting for the MAP_ENTRY_IN_TRANSITION state ending with
  the vnode locked.

Modified:
  stable/9/sys/vm/vm_fault.c
Directory Properties:
  stable/9/sys/   (props changed)

Modified: stable/9/sys/vm/vm_fault.c
==============================================================================
--- stable/9/sys/vm/vm_fault.c  Tue May  5 08:15:10 2015        (r282457)
+++ stable/9/sys/vm/vm_fault.c  Tue May  5 08:16:47 2015        (r282458)
@@ -296,6 +296,10 @@ RetryFault:;
                vm_map_lock(fs.map);
                if (vm_map_lookup_entry(fs.map, vaddr, &fs.entry) &&
                    (fs.entry->eflags & MAP_ENTRY_IN_TRANSITION)) {
+                       if (fs.vp != NULL) {
+                               vput(fs.vp);
+                               fs.vp = NULL;
+                       }
                        fs.entry->eflags |= MAP_ENTRY_NEEDS_WAKEUP;
                        vm_map_unlock_and_wait(fs.map, 0);
                } else
_______________________________________________
svn-src-stable-9@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-stable-9
To unsubscribe, send any mail to "svn-src-stable-9-unsubscr...@freebsd.org"

Reply via email to