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 <tanghui20@huawei.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
Hui Tang 2021-03-19 18:44:19 +08:00 committed by Herbert Xu
parent bbe6c4ba51
commit ed48466d3f
1 changed files with 9 additions and 10 deletions

View File

@ -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;
}