diff options
author | Constantine Sapuntzakis <csapuntz@cvs.openbsd.org> | 1998-07-13 02:52:02 +0000 |
---|---|---|
committer | Constantine Sapuntzakis <csapuntz@cvs.openbsd.org> | 1998-07-13 02:52:02 +0000 |
commit | af5295e511fdb7c6a166874d715526556c71d65a (patch) | |
tree | 3e59b4d76153ac5851af1199eab77dff9c65789d /sys/miscfs/union | |
parent | 32141c31099fa92560ad8307960f56dc5eac21e0 (diff) |
Fix locking discipline snafu with UNIONFS. Thanks to Don Schmid (yensid@imsa.edu) for the original fix and Todd Miller.
Diffstat (limited to 'sys/miscfs/union')
-rw-r--r-- | sys/miscfs/union/union_vnops.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/miscfs/union/union_vnops.c b/sys/miscfs/union/union_vnops.c index 835da8d8518..e0c76bf9d74 100644 --- a/sys/miscfs/union/union_vnops.c +++ b/sys/miscfs/union/union_vnops.c @@ -1,4 +1,4 @@ -/* $OpenBSD: union_vnops.c,v 1.9 1997/11/06 05:58:54 csapuntz Exp $ */ +/* $OpenBSD: union_vnops.c,v 1.10 1998/07/13 02:52:01 csapuntz Exp $ */ /* $NetBSD: union_vnops.c,v 1.30.4.1 1996/05/25 22:10:14 jtc Exp $ */ /* @@ -1591,8 +1591,10 @@ union_inactive(v) union_diruncache(un); + VOP_UNLOCK(ap->a_vp, 0, ap->a_p); + if ((un->un_flags & UN_CACHED) == 0) - vgone(ap->a_vp); + vrecycle(ap->a_vp, (struct simplelock *)0, ap->a_p); return (0); } |