gss_mech_switch.c | 1 + gss_pseudoflavors.c | 1 + 2 files changed, 2 insertions(+) diff -u --recursive --new-file --show-c-function linux-2.6.1-12-gss_missingkfree/net/sunrpc/auth_gss/gss_mech_switch.c linux-2.6.1-13-memleaks/net/sunrpc/auth_gss/gss_mech_switch.c --- linux-2.6.1-12-gss_missingkfree/net/sunrpc/auth_gss/gss_mech_switch.c 2004-01-01 21:21:01.000000000 -0500 +++ linux-2.6.1-13-memleaks/net/sunrpc/auth_gss/gss_mech_switch.c 2004-01-03 12:30:13.000000000 -0500 @@ -70,6 +70,7 @@ gss_mech_register(struct xdr_netobj * me } gm->gm_oid.len = mech_type->len; if (!(gm->gm_oid.data = kmalloc(mech_type->len, GFP_KERNEL))) { + kfree(gm); printk("Failed to allocate memory in gss_mech_register"); return -1; } diff -u --recursive --new-file --show-c-function linux-2.6.1-12-gss_missingkfree/net/sunrpc/auth_gss/gss_pseudoflavors.c linux-2.6.1-13-memleaks/net/sunrpc/auth_gss/gss_pseudoflavors.c --- linux-2.6.1-12-gss_missingkfree/net/sunrpc/auth_gss/gss_pseudoflavors.c 2004-01-01 21:18:46.000000000 -0500 +++ linux-2.6.1-13-memleaks/net/sunrpc/auth_gss/gss_pseudoflavors.c 2004-01-03 12:30:13.000000000 -0500 @@ -92,6 +92,7 @@ gss_register_triple(u32 pseudoflavor, st return 0; err_unlock: + kfree(triple); spin_unlock(®istered_triples_lock); err: return -1;