From: Xiang Chen Date: Wed, 29 May 2019 09:58:42 +0000 (+0800) Subject: scsi: hisi_sas: Delete PHY timers when rmmod or probe failed X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=6c86e046cf97b4a03d6166ba95b3f448455abbb0;p=openwrt%2Fstaging%2Fblogic.git scsi: hisi_sas: Delete PHY timers when rmmod or probe failed When removing the driver or when probe fails, we need to delete the PHY timers. Signed-off-by: Xiang Chen Signed-off-by: John Garry Signed-off-by: Martin K. Petersen --- diff --git a/drivers/scsi/hisi_sas/hisi_sas_main.c b/drivers/scsi/hisi_sas/hisi_sas_main.c index 8a7feb8ed8d6..256f93e6f89f 100644 --- a/drivers/scsi/hisi_sas/hisi_sas_main.c +++ b/drivers/scsi/hisi_sas/hisi_sas_main.c @@ -2480,6 +2480,14 @@ EXPORT_SYMBOL_GPL(hisi_sas_alloc); void hisi_sas_free(struct hisi_hba *hisi_hba) { + int i; + + for (i = 0; i < hisi_hba->n_phy; i++) { + struct hisi_sas_phy *phy = &hisi_hba->phy[i]; + + del_timer_sync(&phy->timer); + } + if (hisi_hba->wq) destroy_workqueue(hisi_hba->wq); }