diff options
author | J. Bruce Fields <bfields@citi.umich.edu> | 2007-11-09 12:31:55 -0500 |
---|---|---|
committer | J. Bruce Fields <bfields@citi.umich.edu> | 2008-02-01 16:42:03 -0500 |
commit | 46b25895767c606c630a97b03a895934a7a36a70 (patch) | |
tree | 94c8c9361fe1d82b3d803e3297eeeb9f4984e62c /fs/nfsd | |
parent | ca2a05aa7c72309ee65164c78fa2be7a5038215e (diff) |
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.c | 2 |
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) | |||
695 | } | 695 | } |
696 | retval = register_filesystem(&nfsd_fs_type); | 696 | retval = register_filesystem(&nfsd_fs_type); |
697 | if (retval) { | 697 | if (retval) { |
698 | nfsd_idmap_shutdown(); | ||
698 | nfsd_export_shutdown(); | 699 | nfsd_export_shutdown(); |
699 | nfsd_cache_shutdown(); | 700 | nfsd_cache_shutdown(); |
700 | remove_proc_entry("fs/nfs/exports", NULL); | 701 | remove_proc_entry("fs/nfs/exports", NULL); |
701 | remove_proc_entry("fs/nfs", NULL); | 702 | remove_proc_entry("fs/nfs", NULL); |
702 | nfsd_stat_shutdown(); | 703 | nfsd_stat_shutdown(); |
703 | nfsd_lockd_shutdown(); | 704 | nfsd_lockd_shutdown(); |
705 | nfsd4_free_slabs(); | ||
704 | } | 706 | } |
705 | return retval; | 707 | return retval; |
706 | } | 708 | } |