summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormav <mav@FreeBSD.org>2015-08-13 00:10:36 +0000
committermav <mav@FreeBSD.org>2015-08-13 00:10:36 +0000
commit666c614c0319ff8b10c48cf8d580717df4beea1f (patch)
tree840d1b103bf44372895b9b5503d98f315214857a
parent95e93478d428d5dde3e6e0e5ab08d3e1bbcf8290 (diff)
downloadFreeBSD-src-666c614c0319ff8b10c48cf8d580717df4beea1f.zip
FreeBSD-src-666c614c0319ff8b10c48cf8d580717df4beea1f.tar.gz
MFV 286709:
6093 zfsctl_shares_lookup should only VN_RELE() on zfs_zget() success Reviewed by: Gordon Ross <gwr@nexenta.com> Reviewed by: Matthew Ahrens <mahrens@delphix.com> Reviewed by: George Wilson <george.wilson@delphix.com> Approved by: Robert Mustacchi <rm@joyent.com> Author: Dan McDonald <danmcd@omniti.com> illumos/illumos-gate@0f92170f1ec2737ee5a0e51b5f74093904811452
-rw-r--r--sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c
index c2dd020..693ba41 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c
@@ -21,6 +21,7 @@
/*
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
* Copyright (c) 2013 by Delphix. All rights reserved.
+ * Copyright 2015, OmniTI Computer Consulting, Inc. All rights reserved.
*/
/*
@@ -1149,10 +1150,11 @@ zfsctl_shares_lookup(ap)
ZFS_EXIT(zfsvfs);
return (SET_ERROR(ENOTSUP));
}
- if ((error = zfs_zget(zfsvfs, zfsvfs->z_shares_dir, &dzp)) == 0)
+ if ((error = zfs_zget(zfsvfs, zfsvfs->z_shares_dir, &dzp)) == 0) {
error = VOP_LOOKUP(ZTOV(dzp), vpp, cnp);
+ VN_RELE(ZTOV(dzp));
+ }
- VN_RELE(ZTOV(dzp));
ZFS_EXIT(zfsvfs);
return (error);
OpenPOWER on IntegriCloud