summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Greenman <dg@FreeBSD.org>1995-03-11 22:29:07 +0000
committerDavid Greenman <dg@FreeBSD.org>1995-03-11 22:29:07 +0000
commit3d2a8cf3d9a48e62f8b97d81bdc18a0564a55363 (patch)
tree431053fcafe84365d4658a468ec495ed2bc0ff34
parent17dda4c92966b4f7b56dc1d707f089634b47d7e8 (diff)
Notes
-rw-r--r--sys/kern/vfs_export.c6
-rw-r--r--sys/kern/vfs_subr.c6
2 files changed, 10 insertions, 2 deletions
diff --git a/sys/kern/vfs_export.c b/sys/kern/vfs_export.c
index 808a9f129abe..c46ec68c941b 100644
--- a/sys/kern/vfs_export.c
+++ b/sys/kern/vfs_export.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)vfs_subr.c 8.13 (Berkeley) 4/18/94
- * $Id: vfs_subr.c,v 1.20 1995/03/09 20:27:04 phk Exp $
+ * $Id: vfs_subr.c,v 1.21 1995/03/10 21:18:24 davidg Exp $
*/
/*
@@ -900,6 +900,10 @@ vflush(mp, skipvp, flags)
panic("vflush: not busy");
loop:
for (vp = mp->mnt_vnodelist.lh_first; vp; vp = nvp) {
+ /*
+ * Make sure this vnode wasn't reclaimed in getnewvnode().
+ * Start over if it has (it won't be on the list anymore).
+ */
if (vp->v_mount != mp)
goto loop;
nvp = vp->v_mntvnodes.le_next;
diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c
index 808a9f129abe..c46ec68c941b 100644
--- a/sys/kern/vfs_subr.c
+++ b/sys/kern/vfs_subr.c
@@ -36,7 +36,7 @@
* SUCH DAMAGE.
*
* @(#)vfs_subr.c 8.13 (Berkeley) 4/18/94
- * $Id: vfs_subr.c,v 1.20 1995/03/09 20:27:04 phk Exp $
+ * $Id: vfs_subr.c,v 1.21 1995/03/10 21:18:24 davidg Exp $
*/
/*
@@ -900,6 +900,10 @@ vflush(mp, skipvp, flags)
panic("vflush: not busy");
loop:
for (vp = mp->mnt_vnodelist.lh_first; vp; vp = nvp) {
+ /*
+ * Make sure this vnode wasn't reclaimed in getnewvnode().
+ * Start over if it has (it won't be on the list anymore).
+ */
if (vp->v_mount != mp)
goto loop;
nvp = vp->v_mntvnodes.le_next;