diff options
author | 2005-08-14 12:41:44 +0000 | |
---|---|---|
committer | 2005-08-14 12:41:44 +0000 | |
commit | 3c4ebaa44d8d0e3ffc9220a2f123261a643cbed5 (patch) | |
tree | aa5844d209d5f61c49ca71cc9a98d2dbd21ec1c9 | |
parent | no reason not to record special files sizes along with md5. (diff) | |
download | wireguard-openbsd-3c4ebaa44d8d0e3ffc9220a2f123261a643cbed5.tar.xz wireguard-openbsd-3c4ebaa44d8d0e3ffc9220a2f123261a643cbed5.zip |
When leaving ext2fs_symlink(), unlock the vnode on both error and
non-error cases, so that later on we don't deadlock trying to look it
up. Fixes buglet introduced in revision 1.38, okay deraadt@.
-rw-r--r-- | sys/ufs/ext2fs/ext2fs_vnops.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/sys/ufs/ext2fs/ext2fs_vnops.c b/sys/ufs/ext2fs/ext2fs_vnops.c index 11cbaa0add4..818c56126b1 100644 --- a/sys/ufs/ext2fs/ext2fs_vnops.c +++ b/sys/ufs/ext2fs/ext2fs_vnops.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ext2fs_vnops.c,v 1.40 2005/07/28 22:37:39 pedro Exp $ */ +/* $OpenBSD: ext2fs_vnops.c,v 1.41 2005/08/14 12:41:44 pedro Exp $ */ /* $NetBSD: ext2fs_vnops.c,v 1.1 1997/06/11 09:34:09 bouyer Exp $ */ /* @@ -1194,8 +1194,7 @@ ext2fs_symlink(v) UIO_SYSSPACE, IO_NODELOCKED, ap->a_cnp->cn_cred, NULL, (struct proc *)0); bad: - if (error) - vput(vp); + vput(vp); return (error); } |