Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 17 Jun 2013 06:21:42 +0000 (UTC)
From:      Konstantin Belousov <kib@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org
Subject:   svn commit: r251832 - stable/9/sys/kern
Message-ID:  <201306170621.r5H6Lgqu056459@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kib
Date: Mon Jun 17 06:21:42 2013
New Revision: 251832
URL: http://svnweb.freebsd.org/changeset/base/251832

Log:
  MFC r251322:
  Instead of yielding, pause for 1 tick when donating the current thread
  time to the owner of the vnode lock while iterating over the free vnode
  list.

Modified:
  stable/9/sys/kern/vfs_subr.c
Directory Properties:
  stable/9/sys/   (props changed)

Modified: stable/9/sys/kern/vfs_subr.c
==============================================================================
--- stable/9/sys/kern/vfs_subr.c	Mon Jun 17 06:15:52 2013	(r251831)
+++ stable/9/sys/kern/vfs_subr.c	Mon Jun 17 06:21:42 2013	(r251832)
@@ -4824,7 +4824,7 @@ restart:
 			if (ALWAYS_YIELD || should_yield()) {
 				TAILQ_INSERT_BEFORE(vp, *mvp, v_actfreelist);
 				mtx_unlock(&vnode_free_list_mtx);
-				kern_yield(PRI_USER);
+				pause("vnacti", 1);
 				mtx_lock(&vnode_free_list_mtx);
 				goto restart;
 			}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201306170621.r5H6Lgqu056459>