In ufshcd_init_clk_gating, alloc_ordered_workqueue may fail and return
NULL. The patch handles error consistent with other invocations in this
module.
Signed-off-by: Aditya Pakki <[email protected]>
---
drivers/scsi/ufs/ufshcd.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
index e040f9dd9ff3..701b2da25f09 100644
--- a/drivers/scsi/ufs/ufshcd.c
+++ b/drivers/scsi/ufs/ufshcd.c
@@ -1791,6 +1791,8 @@ static void ufshcd_init_clk_gating(struct ufs_hba *hba)
hba->host->host_no);
hba->clk_gating.clk_gating_workq = alloc_ordered_workqueue(wq_name,
WQ_MEM_RECLAIM);
+ if (!hba->clk_gating.clk_gating_workq)
+ dev_err(hba->dev, "Failed to allocate work queue\n");
hba->clk_gating.is_enabled = true;
--
2.17.1
Hi,
>
> In ufshcd_init_clk_gating, alloc_ordered_workqueue may fail and return
> NULL. The patch handles error consistent with other invocations in this
> module.
Not sure that's good enough, as later on we will try to queue work to that workqueue.
Thanks,
Avri
>
> Signed-off-by: Aditya Pakki <[email protected]>
> ---
> drivers/scsi/ufs/ufshcd.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
> index e040f9dd9ff3..701b2da25f09 100644
> --- a/drivers/scsi/ufs/ufshcd.c
> +++ b/drivers/scsi/ufs/ufshcd.c
> @@ -1791,6 +1791,8 @@ static void ufshcd_init_clk_gating(struct ufs_hba
> *hba)
> hba->host->host_no);
> hba->clk_gating.clk_gating_workq =
> alloc_ordered_workqueue(wq_name,
>
> WQ_MEM_RECLAIM);
> + if (!hba->clk_gating.clk_gating_workq)
> + dev_err(hba->dev, "Failed to allocate work queue\n");
>
> hba->clk_gating.is_enabled = true;
>
> --
> 2.17.1