diff options
author | Artur Grabowski <art@cvs.openbsd.org> | 2001-12-01 01:44:36 +0000 |
---|---|---|
committer | Artur Grabowski <art@cvs.openbsd.org> | 2001-12-01 01:44:36 +0000 |
commit | 4174945ae03cbd3080fbbd9707fcf67fbeb19380 (patch) | |
tree | 3aa7c1420f89fc6abb2f4372831f2ae34c48dcaf /sys/nfs/nfs_node.c | |
parent | eb9c165e0ef5a71856a70aa862278113effb2896 (diff) |
Unlock and drop vnode if VOP_GETATTR fails.
Diffstat (limited to 'sys/nfs/nfs_node.c')
-rw-r--r-- | sys/nfs/nfs_node.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/nfs/nfs_node.c b/sys/nfs/nfs_node.c index 567738584da..f0cebcb4566 100644 --- a/sys/nfs/nfs_node.c +++ b/sys/nfs/nfs_node.c @@ -1,4 +1,4 @@ -/* $OpenBSD: nfs_node.c,v 1.17 2001/11/27 05:27:12 art Exp $ */ +/* $OpenBSD: nfs_node.c,v 1.18 2001/12/01 01:44:35 art Exp $ */ /* $NetBSD: nfs_node.c,v 1.16 1996/02/18 11:53:42 fvdl Exp $ */ /* @@ -177,6 +177,8 @@ loop: */ error = VOP_GETATTR(vp, &np->n_vattr, curproc->p_ucred, curproc); if (error) { + lockmgr(&nfs_hashlock, LK_RELEASE, 0, p); + vrele(vp); return error; } uvm_vnp_setsize(vp, np->n_vattr.va_size); |