summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/kern/vfs_mount.c6
-rw-r--r--sys/kern/vfs_subr.c1
2 files changed, 4 insertions, 3 deletions
diff --git a/sys/kern/vfs_mount.c b/sys/kern/vfs_mount.c
index bdfb1c6..1f6e1d9 100644
--- a/sys/kern/vfs_mount.c
+++ b/sys/kern/vfs_mount.c
@@ -709,7 +709,7 @@ update:
error = vfs_allocate_syncvnode(mp);
} else {
if (mp->mnt_syncer != NULL)
- vput(mp->mnt_syncer);
+ vrele(mp->mnt_syncer);
mp->mnt_syncer = NULL;
}
vfs_unbusy(mp, td);
@@ -1052,7 +1052,7 @@ update:
error = vfs_allocate_syncvnode(mp);
} else {
if (mp->mnt_syncer != NULL)
- vput(mp->mnt_syncer);
+ vrele(mp->mnt_syncer);
mp->mnt_syncer = NULL;
}
vfs_unbusy(mp, td);
@@ -1252,7 +1252,7 @@ dounmount(mp, flags, td)
mp->mnt_flag &=~ MNT_ASYNC;
cache_purgevfs(mp); /* remove cache entries for this file sys */
if (mp->mnt_syncer != NULL)
- vput(mp->mnt_syncer);
+ vrele(mp->mnt_syncer);
/* Move process cdir/rdir refs on fs root to underlying vnode. */
if (VFS_ROOT(mp, &fsrootvp) == 0) {
if (mp->mnt_vnodecovered != NULL)
diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c
index 1684782..c0b2ace 100644
--- a/sys/kern/vfs_subr.c
+++ b/sys/kern/vfs_subr.c
@@ -3080,6 +3080,7 @@ sync_inactive(ap)
} */ *ap;
{
+ VOP_UNLOCK(ap->a_vp, 0, ap->a_td);
vgone(ap->a_vp);
return (0);
}
OpenPOWER on IntegriCloud