svn commit: r282458 - stable/9/sys/vm

Konstantin Belousov kib at FreeBSD.org
Tue May 5 08:16:48 UTC 2015


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


More information about the svn-src-stable mailing list