svn commit: r256213 - head/sys/kern

Konstantin Belousov kib at FreeBSD.org
Wed Oct 9 18:45:02 UTC 2013


Author: kib
Date: Wed Oct  9 18:45:01 2013
New Revision: 256213
URL: http://svnweb.freebsd.org/changeset/base/256213

Log:
  The device vnodes are often unlocked when bread() or bwrite() is
  called.  This probably should be fixed eventually, but for now it is
  not needed to try to flush such vnodes from the buffer allocation
  context.
  
  Reported and tested by:	pho
  Sponsored by:	The FreeBSD Foundation
  MFC after:	1 week
  Approved by:	re (gjb)

Modified:
  head/sys/kern/vfs_bio.c

Modified: head/sys/kern/vfs_bio.c
==============================================================================
--- head/sys/kern/vfs_bio.c	Wed Oct  9 18:44:05 2013	(r256212)
+++ head/sys/kern/vfs_bio.c	Wed Oct  9 18:45:01 2013	(r256213)
@@ -2076,7 +2076,8 @@ getnewbuf_bufd_help(struct vnode *vp, in
 	wait = MNT_NOWAIT;
 	mtx_lock(&nblock);
 	while (needsbuffer & flags) {
-		if (vp != NULL && (td->td_pflags & TDP_BUFNEED) == 0) {
+		if (vp != NULL && vp->v_type != VCHR &&
+		    (td->td_pflags & TDP_BUFNEED) == 0) {
 			mtx_unlock(&nblock);
 
 			/*


More information about the svn-src-head mailing list