From ffd62ef4670a73a995c0ca006218891e87de1d42 Mon Sep 17 00:00:00 2001 From: lingmingqiang Date: Fri, 9 Aug 2019 20:57:59 +0800 Subject: [PATCH] ACC: fixup sec2 soft reset failed problem driver inclusion category: bugfix bugzilla: NA CVE: NA Feature or Bugfix:Bugfix Signed-off-by: Zhangwei Reviewed-by: lingmingqiang Signed-off-by: lingmingqiang Reviewed-by: Yang Yingliang Signed-off-by: Yang Yingliang --- drivers/crypto/hisilicon/sec2/sec_crypto.c | 2 +- drivers/crypto/hisilicon/sec2/sec_main.c | 31 +--------------------- 2 files changed, 2 insertions(+), 31 deletions(-) diff --git a/drivers/crypto/hisilicon/sec2/sec_crypto.c b/drivers/crypto/hisilicon/sec2/sec_crypto.c index 4918ba42bc38..4fd35360070d 100644 --- a/drivers/crypto/hisilicon/sec2/sec_crypto.c +++ b/drivers/crypto/hisilicon/sec2/sec_crypto.c @@ -1097,7 +1097,7 @@ static struct hisi_sec_req *sec_request_alloc(struct hisi_sec_ctx *ctx, *fake_busy = req->fake_busy; __sync_add_and_fetch(&ctx->sec->sec_dfx.fake_busy_cnt, - fake_busy); + *fake_busy); req->priv[req->fusion_num] = in_req->c_req.sk_req; req->fusion_num++; diff --git a/drivers/crypto/hisilicon/sec2/sec_main.c b/drivers/crypto/hisilicon/sec2/sec_main.c index b08fcd6b6085..941aef422298 100644 --- a/drivers/crypto/hisilicon/sec2/sec_main.c +++ b/drivers/crypto/hisilicon/sec2/sec_main.c @@ -1149,7 +1149,6 @@ static int hisi_sec_controller_reset_prepare(struct hisi_sec *hisi_sec) { struct hisi_qm *qm = &hisi_sec->qm; struct pci_dev *pdev = qm->pdev; - int retry = 0; int ret; ret = hisi_sec_reset_prepare_rdy(hisi_sec); @@ -1170,17 +1169,6 @@ static int hisi_sec_controller_reset_prepare(struct hisi_sec *hisi_sec) return ret; } -#ifdef CONFIG_CRYPTO_QM_UACCE - /* wait 10s for uacce_queue to release */ - while (retry++ < 1000) { - msleep(20); - if (!uacce_unregister(&qm->uacce)) - break; - - if (retry == 1000) - return -EBUSY; - } -#endif return 0; } @@ -1272,8 +1260,7 @@ static int hisi_sec_controller_reset_done(struct hisi_sec *hisi_sec) { struct hisi_qm *qm = &hisi_sec->qm; struct pci_dev *pdev = qm->pdev; - struct hisi_qp *qp; - int i, ret; + int ret; hisi_qm_clear_queues(qm); @@ -1286,17 +1273,6 @@ static int hisi_sec_controller_reset_done(struct hisi_sec *hisi_sec) return -EPERM; } - for (i = 0; i < qm->qp_num; i++) { - qp = qm->qp_array[i]; - if (qp) { - ret = hisi_qm_start_qp(qp, 0); - if (ret < 0) { - dev_err(&pdev->dev, "Start qp%d failed\n", i); - return -EPERM; - } - } - } - if (hisi_sec->ctrl->num_vfs) hisi_sec_vf_q_assign(hisi_sec, hisi_sec->ctrl->num_vfs); @@ -1309,11 +1285,6 @@ static int hisi_sec_controller_reset_done(struct hisi_sec *hisi_sec) return -EPERM; } -#ifdef CONFIG_CRYPTO_QM_UACCE - if (qm->use_uacce) - uacce_register(&qm->uacce); -#endif - return 0; } -- GitLab