crypto: hisilicon/qm - fix the process of VF's list adding
If Kunpeng 920 enabled the sva mode, the "qm alg register" process will return directly. So the list of VF wasn't added to QM list. Signed-off-by: Kai Ye <yekai13@huawei.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
Родитель
dc11803409
Коммит
0dbcf1a24e
|
@ -4256,17 +4256,17 @@ int hisi_qm_alg_register(struct hisi_qm *qm, struct hisi_qm_list *qm_list)
|
|||
int flag = 0;
|
||||
int ret = 0;
|
||||
|
||||
if (qm->ver <= QM_HW_V2 && qm->use_sva) {
|
||||
dev_info(dev, "HW V2 not both use uacce sva mode and hardware crypto algs.\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
mutex_lock(&qm_list->lock);
|
||||
if (list_empty(&qm_list->list))
|
||||
flag = 1;
|
||||
list_add_tail(&qm->list, &qm_list->list);
|
||||
mutex_unlock(&qm_list->lock);
|
||||
|
||||
if (qm->ver <= QM_HW_V2 && qm->use_sva) {
|
||||
dev_info(dev, "HW V2 not both use uacce sva mode and hardware crypto algs.\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (flag) {
|
||||
ret = qm_list->register_to_crypto(qm);
|
||||
if (ret) {
|
||||
|
@ -4291,13 +4291,13 @@ EXPORT_SYMBOL_GPL(hisi_qm_alg_register);
|
|||
*/
|
||||
void hisi_qm_alg_unregister(struct hisi_qm *qm, struct hisi_qm_list *qm_list)
|
||||
{
|
||||
if (qm->ver <= QM_HW_V2 && qm->use_sva)
|
||||
return;
|
||||
|
||||
mutex_lock(&qm_list->lock);
|
||||
list_del(&qm->list);
|
||||
mutex_unlock(&qm_list->lock);
|
||||
|
||||
if (qm->ver <= QM_HW_V2 && qm->use_sva)
|
||||
return;
|
||||
|
||||
if (list_empty(&qm_list->list))
|
||||
qm_list->unregister_from_crypto(qm);
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче