Commit 32419a40 authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] sunrpc rmmod oops fix

From: "J. Bruce Fields" <bfields@fieldses.org>

Unregister svcauth_gss caches on exit from gss module; fixes an oops on
rmmod.
parent 39b000cf
...@@ -20,6 +20,7 @@ ...@@ -20,6 +20,7 @@
#include <linux/sunrpc/auth_gss.h> #include <linux/sunrpc/auth_gss.h>
int gss_svc_init(void); int gss_svc_init(void);
void gss_svc_shutdown(void);
int svcauth_gss_register_pseudoflavor(u32 pseudoflavor, char * name); int svcauth_gss_register_pseudoflavor(u32 pseudoflavor, char * name);
#endif /* __KERNEL__ */ #endif /* __KERNEL__ */
......
...@@ -984,6 +984,7 @@ static int __init init_rpcsec_gss(void) ...@@ -984,6 +984,7 @@ static int __init init_rpcsec_gss(void)
static void __exit exit_rpcsec_gss(void) static void __exit exit_rpcsec_gss(void)
{ {
gss_svc_shutdown();
gss_mech_unregister_all(); gss_mech_unregister_all();
rpcauth_unregister(&authgss_ops); rpcauth_unregister(&authgss_ops);
} }
......
...@@ -1063,3 +1063,10 @@ gss_svc_init(void) ...@@ -1063,3 +1063,10 @@ gss_svc_init(void)
svc_auth_register(RPC_AUTH_GSS, &svcauthops_gss); svc_auth_register(RPC_AUTH_GSS, &svcauthops_gss);
return 0; return 0;
} }
void
gss_svc_shutdown(void)
{
cache_unregister(&rsc_cache);
cache_unregister(&rsi_cache);
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment