From: Wei Yongjun Date: Sun, 31 Jul 2016 09:47:06 +0000 (+0200) Subject: s390/zcrypt: fix possible memory leak in ap_module_init() X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=33c388b81ce4b2f249730014b9b9f103a7578ca2;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git s390/zcrypt: fix possible memory leak in ap_module_init() ap_configuration is malloced in ap_module_init() and should be freed before leaving from the error handling cases, otherwise it may cause memory leak. Signed-off-by: Wei Yongjun Signed-off-by: Martin Schwidefsky --- diff --git a/drivers/s390/crypto/ap_bus.c b/drivers/s390/crypto/ap_bus.c index 03e4d6246d87..ed92fb09fc8e 100644 --- a/drivers/s390/crypto/ap_bus.c +++ b/drivers/s390/crypto/ap_bus.c @@ -1819,7 +1819,8 @@ int __init ap_module_init(void) if (ap_domain_index < -1 || ap_domain_index > max_domain_id) { pr_warn("%d is not a valid cryptographic domain\n", ap_domain_index); - return -EINVAL; + rc = -EINVAL; + goto out_free; } /* In resume callback we need to know if the user had set the domain. * If so, we can not just reset it. @@ -1892,6 +1893,7 @@ out: unregister_reset_call(&ap_reset_call); if (ap_using_interrupts()) unregister_adapter_interrupt(&ap_airq); +out_free: kfree(ap_configuration); return rc; }