Commit 7e9080e1 authored by John Garry's avatar John Garry Committed by Martin K. Petersen

hisi_sas: Add hisi_hba workqueue

Signed-off-by: default avatarJohn Garry <john.garry@huawei.com>
Reviewed-by: default avatarArnd Bergmann <arnd@arndb.de>
Reviewed-by: default avatarHannes Reinecke <hare@suse.de>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 50cb916f
...@@ -72,6 +72,7 @@ struct hisi_hba { ...@@ -72,6 +72,7 @@ struct hisi_hba {
int n_phy; int n_phy;
struct workqueue_struct *wq;
int slot_index_count; int slot_index_count;
unsigned long *slot_index_tags; unsigned long *slot_index_tags;
......
...@@ -150,6 +150,12 @@ static int hisi_sas_alloc(struct hisi_hba *hisi_hba, struct Scsi_Host *shost) ...@@ -150,6 +150,12 @@ static int hisi_sas_alloc(struct hisi_hba *hisi_hba, struct Scsi_Host *shost)
hisi_sas_slot_index_init(hisi_hba); hisi_sas_slot_index_init(hisi_hba);
hisi_hba->wq = create_singlethread_workqueue(dev_name(dev));
if (!hisi_hba->wq) {
dev_err(dev, "sas_alloc: failed to create workqueue\n");
goto err_out;
}
return 0; return 0;
err_out: err_out:
return -ENOMEM; return -ENOMEM;
...@@ -207,6 +213,8 @@ static void hisi_sas_free(struct hisi_hba *hisi_hba) ...@@ -207,6 +213,8 @@ static void hisi_sas_free(struct hisi_hba *hisi_hba)
hisi_hba->sata_breakpoint, hisi_hba->sata_breakpoint,
hisi_hba->sata_breakpoint_dma); hisi_hba->sata_breakpoint_dma);
if (hisi_hba->wq)
destroy_workqueue(hisi_hba->wq);
} }
static struct Scsi_Host *hisi_sas_shost_alloc(struct platform_device *pdev, static struct Scsi_Host *hisi_sas_shost_alloc(struct platform_device *pdev,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment