From: Hui Tang Date: Fri, 19 Mar 2021 10:44:19 +0000 (+0800) Subject: crypto: hisilicon/hpre - optimise 'hpre_algs_register' error path X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=ed48466d3ff94fac09ca5c521a24501eb5908277;p=linux.git crypto: hisilicon/hpre - optimise 'hpre_algs_register' error path There is redundant code especially when registing new algorithms in the future. Signed-off-by: Hui Tang Signed-off-by: Herbert Xu --- diff --git a/drivers/crypto/hisilicon/hpre/hpre_crypto.c b/drivers/crypto/hisilicon/hpre/hpre_crypto.c index 50ccd1034aaea..b77473be51315 100644 --- a/drivers/crypto/hisilicon/hpre/hpre_crypto.c +++ b/drivers/crypto/hisilicon/hpre/hpre_crypto.c @@ -1993,25 +1993,24 @@ int hpre_algs_register(struct hisi_qm *qm) return ret; ret = crypto_register_kpp(&dh); - if (ret) { - crypto_unregister_akcipher(&rsa); - return ret; - } + if (ret) + goto unreg_rsa; if (qm->ver >= QM_HW_V3) { ret = hpre_register_ecdh(); if (ret) - goto reg_err; + goto unreg_dh; ret = crypto_register_kpp(&curve25519_alg); - if (ret) { - hpre_unregister_ecdh(); - goto reg_err; - } + if (ret) + goto unreg_ecdh; } return 0; -reg_err: +unreg_ecdh: + hpre_unregister_ecdh(); +unreg_dh: crypto_unregister_kpp(&dh); +unreg_rsa: crypto_unregister_akcipher(&rsa); return ret; }