summaryrefslogtreecommitdiffstats
path: root/fs/nfsd
diff options
context:
space:
mode:
authorJ. Bruce Fields <bfields@citi.umich.edu>2007-11-09 12:31:55 -0500
committerJ. Bruce Fields <bfields@citi.umich.edu>2008-02-01 16:42:03 -0500
commit46b25895767c606c630a97b03a895934a7a36a70 (patch)
tree94c8c9361fe1d82b3d803e3297eeeb9f4984e62c /fs/nfsd
parentca2a05aa7c72309ee65164c78fa2be7a5038215e (diff)
downloadlinux-46b25895767c606c630a97b03a895934a7a36a70.tar.gz
linux-46b25895767c606c630a97b03a895934a7a36a70.tar.bz2
linux-46b25895767c606c630a97b03a895934a7a36a70.zip
knfsd: cleanup nfsd4 properly on module init failure
We forgot to shut down the nfs4 state and idmapping code in this case. Acked-by: NeilBrown <neilb@suse.de> Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Diffstat (limited to 'fs/nfsd')
-rw-r--r--fs/nfsd/nfsctl.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/nfsd/nfsctl.c b/fs/nfsd/nfsctl.c
index 77dc9893b7ba..d8d50a773a5b 100644
--- a/fs/nfsd/nfsctl.c
+++ b/fs/nfsd/nfsctl.c
@@ -695,12 +695,14 @@ static int __init init_nfsd(void)
}
retval = register_filesystem(&nfsd_fs_type);
if (retval) {
+ nfsd_idmap_shutdown();
nfsd_export_shutdown();
nfsd_cache_shutdown();
remove_proc_entry("fs/nfs/exports", NULL);
remove_proc_entry("fs/nfs", NULL);
nfsd_stat_shutdown();
nfsd_lockd_shutdown();
+ nfsd4_free_slabs();
}
return retval;
}