Mercurial > illumos > illumos-gate
changeset 13986:341879d91372
2986 nfs: exi refcounter leak at rfs3_lookup
Reviewed by: Christopher Siden <christopher.siden@delphix.com>
Reviewed by: Garrett D'Amore <garrett@damore.org>
Approved by: Dan McDonald <danmcd@nexenta.com>
author | Marcel Telka <marcel.telka@nexenta.com> |
---|---|
date | Thu, 14 Mar 2013 18:08:41 -0400 |
parents | ad441dd34478 |
children | c8aa73ad0c0b |
files | usr/src/uts/common/fs/nfs/nfs3_srv.c |
diffstat | 1 files changed, 10 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/usr/src/uts/common/fs/nfs/nfs3_srv.c Thu Mar 14 17:58:04 2013 -0400 +++ b/usr/src/uts/common/fs/nfs/nfs3_srv.c Thu Mar 14 18:08:41 2013 -0400 @@ -21,7 +21,7 @@ /* * Copyright (c) 1994, 2010, Oracle and/or its affiliates. All rights reserved. * - * Copyright 2012 Nexenta Systems, Inc. All rights reserved. + * Copyright 2013 Nexenta Systems, Inc. All rights reserved. */ /* Copyright (c) 1983, 1984, 1985, 1986, 1987, 1988, 1989 AT&T */ @@ -514,20 +514,20 @@ auth_weak = TRUE; } + /* + * If publicfh_flag is true then we have called rfs_publicfh_mclookup + * and have obtained a new exportinfo in exi which needs to be + * released. Note that the original exportinfo pointed to by exi + * will be released by the caller, common_dispatch. + */ + if (publicfh_flag) + exi_rele(exi); + if (error) { VN_RELE(vp); goto out; } - /* - * If publicfh_flag is true then we have called rfs_publicfh_mclookup - * and have obtained a new exportinfo in exi which needs to be - * released. Note the the original exportinfo pointed to by exi - * will be released by the caller, common_dispatch. - */ - if (publicfh_flag) - exi_rele(exi); - va.va_mask = AT_ALL; vap = rfs4_delegated_getattr(vp, &va, 0, cr) ? NULL : &va;