svn commit: r186458 - head/sys/kern

Joe Marcus Clarke marcus at FreeBSD.org
Tue Dec 23 20:43:42 UTC 2008


Author: marcus (doc,ports committer)
Date: Tue Dec 23 20:43:42 2008
New Revision: 186458
URL: http://svn.freebsd.org/changeset/base/186458

Log:
  Do not KASSERT when vp->v_dd is NULL.  Only directories which have had ".."
  looked up would have v_dd set to a non-NULL value.  This fixes a panic
  seen when running installworld on a diskless system with a separate /usr
  file system.
  
  Submitted by:	cracauer
  Approved by:	kib

Modified:
  head/sys/kern/vfs_cache.c

Modified: head/sys/kern/vfs_cache.c
==============================================================================
--- head/sys/kern/vfs_cache.c	Tue Dec 23 20:25:04 2008	(r186457)
+++ head/sys/kern/vfs_cache.c	Tue Dec 23 20:43:42 2008	(r186458)
@@ -936,7 +936,7 @@ vn_fullpath1(struct thread *td, struct v
 		}
 		ncp = TAILQ_FIRST(&vp->v_cache_dst);
 		if (ncp != NULL) {
-			MPASS(ncp->nc_dvp == vp->v_dd);
+			MPASS(vp->v_dd == NULL || ncp->nc_dvp == vp->v_dd);
 			buflen -= ncp->nc_nlen - 1;
 			for (i = ncp->nc_nlen - 1; i >= 0 && bp != buf; i--)
 				*--bp = ncp->nc_name[i];


More information about the svn-src-all mailing list