scsi: hisi_sas: delete timer when removing hisi_sas driver

Delete timer for v1 and v3 hw when removing hisi_sas driver.

Signed-off-by: Xiang chen <chenxiang66@hisilicon.com>
Signed-off-by: John Garry <john.garry@huawei.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
Xiang Chen 2018-03-24 00:05:10 +08:00 committed by Martin K. Petersen
parent 6157363091
commit 5df41af4b1
3 changed files with 6 additions and 3 deletions

View File

@ -2177,6 +2177,9 @@ int hisi_sas_remove(struct platform_device *pdev)
struct hisi_hba *hisi_hba = sha->lldd_ha;
struct Scsi_Host *shost = sha->core.shost;
if (timer_pending(&hisi_hba->timer))
del_timer(&hisi_hba->timer);
sas_unregister_ha(sha);
sas_remove_host(sha->core.shost);

View File

@ -3599,9 +3599,6 @@ static int hisi_sas_v2_remove(struct platform_device *pdev)
struct sas_ha_struct *sha = platform_get_drvdata(pdev);
struct hisi_hba *hisi_hba = sha->lldd_ha;
if (timer_pending(&hisi_hba->timer))
del_timer(&hisi_hba->timer);
hisi_sas_kill_tasklets(hisi_hba);
return hisi_sas_remove(pdev);

View File

@ -2183,6 +2183,9 @@ static void hisi_sas_v3_remove(struct pci_dev *pdev)
struct hisi_hba *hisi_hba = sha->lldd_ha;
struct Scsi_Host *shost = sha->core.shost;
if (timer_pending(&hisi_hba->timer))
del_timer(&hisi_hba->timer);
sas_unregister_ha(sha);
sas_remove_host(sha->core.shost);