diff options
author | Trond Myklebust <Trond.Myklebust@netapp.com> | 2006-03-20 13:44:09 -0500 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2006-03-20 13:44:09 -0500 |
commit | 12de3b35ea549c5819f287508d7afab0bf3ac44d (patch) | |
tree | c1b7f96236c4b19bcd911705017bf31bcbc2b605 /fs/nfs | |
parent | 24c5d9d7ea5a64fb5f157d17aa2c67a3300f8a08 (diff) |
SUNRPC: Ensure that rpc_mkpipe returns a refcounted dentry
If not, we cannot guarantee that idmap->idmap_dentry, gss_auth->dentry and
clnt->cl_dentry are valid dentries.
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs')
-rw-r--r-- | fs/nfs/idmap.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/nfs/idmap.c b/fs/nfs/idmap.c index 821edd30333b..32c95a0d93f3 100644 --- a/fs/nfs/idmap.c +++ b/fs/nfs/idmap.c | |||
@@ -132,6 +132,8 @@ nfs_idmap_delete(struct nfs4_client *clp) | |||
132 | 132 | ||
133 | if (!idmap) | 133 | if (!idmap) |
134 | return; | 134 | return; |
135 | dput(idmap->idmap_dentry); | ||
136 | idmap->idmap_dentry = NULL; | ||
135 | rpc_unlink(idmap->idmap_path); | 137 | rpc_unlink(idmap->idmap_path); |
136 | clp->cl_idmap = NULL; | 138 | clp->cl_idmap = NULL; |
137 | kfree(idmap); | 139 | kfree(idmap); |