crypto/nx: Create nx842_delete_coprocs function
Move deleting coprocessors info upon exit or failure to nx842_delete_coprocs(). Signed-off-by: Haren Myneni <haren@us.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
parent
56c10d5ea6
commit
1ee51b28ee
|
@ -593,6 +593,16 @@ static int __init nx842_powernv_probe(struct device_node *dn)
|
|||
return 0;
|
||||
}
|
||||
|
||||
static void nx842_delete_coprocs(void)
|
||||
{
|
||||
struct nx842_coproc *coproc, *n;
|
||||
|
||||
list_for_each_entry_safe(coproc, n, &nx842_coprocs, list) {
|
||||
list_del(&coproc->list);
|
||||
kfree(coproc);
|
||||
}
|
||||
}
|
||||
|
||||
static struct nx842_constraints nx842_powernv_constraints = {
|
||||
.alignment = DDE_BUFFER_ALIGN,
|
||||
.multiple = DDE_BUFFER_LAST_MULT,
|
||||
|
@ -652,13 +662,7 @@ static __init int nx842_powernv_init(void)
|
|||
|
||||
ret = crypto_register_alg(&nx842_powernv_alg);
|
||||
if (ret) {
|
||||
struct nx842_coproc *coproc, *n;
|
||||
|
||||
list_for_each_entry_safe(coproc, n, &nx842_coprocs, list) {
|
||||
list_del(&coproc->list);
|
||||
kfree(coproc);
|
||||
}
|
||||
|
||||
nx842_delete_coprocs();
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -668,13 +672,8 @@ module_init(nx842_powernv_init);
|
|||
|
||||
static void __exit nx842_powernv_exit(void)
|
||||
{
|
||||
struct nx842_coproc *coproc, *n;
|
||||
|
||||
crypto_unregister_alg(&nx842_powernv_alg);
|
||||
|
||||
list_for_each_entry_safe(coproc, n, &nx842_coprocs, list) {
|
||||
list_del(&coproc->list);
|
||||
kfree(coproc);
|
||||
}
|
||||
nx842_delete_coprocs();
|
||||
}
|
||||
module_exit(nx842_powernv_exit);
|
||||
|
|
Loading…
Reference in New Issue