From 4748750ba901e3d3b23cdb21b48979cba490044d Mon Sep 17 00:00:00 2001 From: Hao Fang Date: Fri, 21 Dec 2018 10:15:21 +0800 Subject: [PATCH] zip/qm: bugfix: modify zip as parent module for wd spimdev device Fix the zip as the spimdev->owner, so if mdev created, zip module can't be remove. If want to remove zip module, first remove mdev once mdev have created. Feature or Bugfix:Bugfix Signed-off-by: Hao Fang Reviewed-by: xuzaibo Reviewed-by: huangdaode --- drivers/crypto/hisilicon/qm.c | 2 +- drivers/crypto/hisilicon/qm.h | 1 + drivers/crypto/hisilicon/zip/zip_main.c | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/crypto/hisilicon/qm.c b/drivers/crypto/hisilicon/qm.c index f53f01ee5394..d008be68bf08 100644 --- a/drivers/crypto/hisilicon/qm.c +++ b/drivers/crypto/hisilicon/qm.c @@ -1723,7 +1723,7 @@ static int qm_register_spimdev(struct hisi_qm *qm) spimdev->iommu_type = VFIO_SPIMDEV_IOMMU; spimdev->dma_flag = VFIO_SPIMDEV_DMA_PHY; #endif - spimdev->owner = THIS_MODULE; + spimdev->owner = qm->parent; spimdev->name = qm->dev_name; spimdev->dev = &pdev->dev; spimdev->is_vf = pdev->is_virtfn; diff --git a/drivers/crypto/hisilicon/qm.h b/drivers/crypto/hisilicon/qm.h index 342e6734f099..5badebc4d7b4 100644 --- a/drivers/crypto/hisilicon/qm.h +++ b/drivers/crypto/hisilicon/qm.h @@ -113,6 +113,7 @@ struct hisi_qm { const char *dev_name; struct pci_dev *pdev; void __iomem *io_base; + struct module *parent; u32 sqe_size; u32 qp_base; u32 qp_num; diff --git a/drivers/crypto/hisilicon/zip/zip_main.c b/drivers/crypto/hisilicon/zip/zip_main.c index 5a6ddf146949..62828bdfa548 100644 --- a/drivers/crypto/hisilicon/zip/zip_main.c +++ b/drivers/crypto/hisilicon/zip/zip_main.c @@ -555,7 +555,7 @@ static int hisi_zip_probe(struct pci_dev *pdev, const struct pci_device_id *id) qm = &hisi_zip->qm; qm->pdev = pdev; - + qm->parent = THIS_MODULE; rev_id = hisi_qm_get_hw_version(qm); if (rev_id < 0) return rev_id; -- GitLab