aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/dns_resolve.c
diff options
context:
space:
mode:
authorStanislav Kinsbursky <[email protected]>2011-11-25 14:12:48 +0000
committerTrond Myklebust <[email protected]>2012-01-31 23:20:26 +0000
commit9222b955065dbb047b8db9eb2431979bff3ce700 (patch)
treef58888a80407c9d3e825612bc32a7e4044946699 /fs/nfs/dns_resolve.c
parentSUNRPC: split cache creation and PipeFS registration (diff)
downloadkernel-9222b955065dbb047b8db9eb2431979bff3ce700.tar.gz
kernel-9222b955065dbb047b8db9eb2431979bff3ce700.zip
NFS: split cache creation and PipeFS registration
This precursor patch splits NFS cache creation and PipeFS registartion. It's required for latter split of NFS DNS resolver cache creation per network namespace context and PipeFS registration/unregistration on MOUNT/UMOUNT events. Signed-off-by: Stanislav Kinsbursky <[email protected]> Signed-off-by: Trond Myklebust <[email protected]>
Diffstat (limited to 'fs/nfs/dns_resolve.c')
-rw-r--r--fs/nfs/dns_resolve.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/fs/nfs/dns_resolve.c b/fs/nfs/dns_resolve.c
index a6e711ad130f..619dea6b5ccf 100644
--- a/fs/nfs/dns_resolve.c
+++ b/fs/nfs/dns_resolve.c
@@ -361,12 +361,21 @@ ssize_t nfs_dns_resolve_name(char *name, size_t namelen,
int nfs_dns_resolver_init(void)
{
- return nfs_cache_register(&nfs_dns_resolve);
+ int err;
+
+ nfs_cache_init(&nfs_dns_resolve);
+ err = nfs_cache_register(&nfs_dns_resolve);
+ if (err) {
+ nfs_cache_destroy(&nfs_dns_resolve);
+ return err;
+ }
+ return 0;
}
void nfs_dns_resolver_destroy(void)
{
nfs_cache_unregister(&nfs_dns_resolve);
+ nfs_cache_destroy(&nfs_dns_resolve);
}
#endif