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 <weiyj.lk@gmail.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
This commit is contained in:
parent
ef4423ce70
commit
33c388b81c
@ -1819,7 +1819,8 @@ int __init ap_module_init(void)
|
|||||||
if (ap_domain_index < -1 || ap_domain_index > max_domain_id) {
|
if (ap_domain_index < -1 || ap_domain_index > max_domain_id) {
|
||||||
pr_warn("%d is not a valid cryptographic domain\n",
|
pr_warn("%d is not a valid cryptographic domain\n",
|
||||||
ap_domain_index);
|
ap_domain_index);
|
||||||
return -EINVAL;
|
rc = -EINVAL;
|
||||||
|
goto out_free;
|
||||||
}
|
}
|
||||||
/* In resume callback we need to know if the user had set the domain.
|
/* In resume callback we need to know if the user had set the domain.
|
||||||
* If so, we can not just reset it.
|
* If so, we can not just reset it.
|
||||||
@ -1892,6 +1893,7 @@ int __init ap_module_init(void)
|
|||||||
unregister_reset_call(&ap_reset_call);
|
unregister_reset_call(&ap_reset_call);
|
||||||
if (ap_using_interrupts())
|
if (ap_using_interrupts())
|
||||||
unregister_adapter_interrupt(&ap_airq);
|
unregister_adapter_interrupt(&ap_airq);
|
||||||
|
out_free:
|
||||||
kfree(ap_configuration);
|
kfree(ap_configuration);
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user