summaryrefslogtreecommitdiffstats
path: root/net/sunrpc/auth_gss/gss_mech_switch.c
diff options
context:
space:
mode:
authorJ. Bruce Fields2006-06-30 10:56:16 +0200
committerLinus Torvalds2006-06-30 20:25:40 +0200
commit1df0cada03644e37ae6fefd7c0267d9a531991e2 (patch)
tree5b57b7749bba84ff31e4966e18d237e1dc77c2f2 /net/sunrpc/auth_gss/gss_mech_switch.c
parent[PATCH] knfsd: nfsd: fix misplaced fh_unlock() in nfsd_link() (diff)
downloadkernel-qcow2-linux-1df0cada03644e37ae6fefd7c0267d9a531991e2.tar.gz
kernel-qcow2-linux-1df0cada03644e37ae6fefd7c0267d9a531991e2.tar.xz
kernel-qcow2-linux-1df0cada03644e37ae6fefd7c0267d9a531991e2.zip
[PATCH] knfsd: svcrpc: gss: simplify rsc_parse()
Adopt a simpler convention for gss_mech_put(), to simplify rsc_parse(). Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu> Signed-off-by: Neil Brown <neilb@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'net/sunrpc/auth_gss/gss_mech_switch.c')
-rw-r--r--net/sunrpc/auth_gss/gss_mech_switch.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/net/sunrpc/auth_gss/gss_mech_switch.c b/net/sunrpc/auth_gss/gss_mech_switch.c
index f8bac6ccd524..d88468d21c37 100644
--- a/net/sunrpc/auth_gss/gss_mech_switch.c
+++ b/net/sunrpc/auth_gss/gss_mech_switch.c
@@ -224,7 +224,8 @@ EXPORT_SYMBOL(gss_service_to_auth_domain_name);
void
gss_mech_put(struct gss_api_mech * gm)
{
- module_put(gm->gm_owner);
+ if (gm)
+ module_put(gm->gm_owner);
}
EXPORT_SYMBOL(gss_mech_put);
@@ -307,8 +308,7 @@ gss_delete_sec_context(struct gss_ctx **context_handle)
(*context_handle)->mech_type->gm_ops
->gss_delete_sec_context((*context_handle)
->internal_ctx_id);
- if ((*context_handle)->mech_type)
- gss_mech_put((*context_handle)->mech_type);
+ gss_mech_put((*context_handle)->mech_type);
kfree(*context_handle);
*context_handle=NULL;
return GSS_S_COMPLETE;