Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8a7e59ba authored by Can Guo's avatar Can Guo
Browse files

scsi: ufs: do not destroy clk scaling work queue if it is NULL



Function ufshcd_hba_exit might be called to destroy clk scaling work queue
if failure happends in function ufshcd_init before clk gating work queue
is created. This change fixs it by skipping destroying clk scaling work
queue if it is NULL.

Change-Id: Ifb1c46f490749e4afe7cea331c29d073175f68ef
Signed-off-by: default avatarCan Guo <cang@codeaurora.org>
parent 07ec991e
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -3,7 +3,7 @@
 *
 * This code is based on drivers/scsi/ufs/ufshcd.c
 * Copyright (C) 2011-2013 Samsung India Software Operations
 * Copyright (c) 2013-2017, The Linux Foundation. All rights reserved.
 * Copyright (c) 2013-2018, The Linux Foundation. All rights reserved.
 *
 * Authors:
 *	Santosh Yaraganavi <santosh.sy@samsung.com>
@@ -8431,6 +8431,7 @@ static void ufshcd_hba_exit(struct ufs_hba *hba)
		if (ufshcd_is_clkscaling_supported(hba)) {
			if (hba->devfreq)
				ufshcd_suspend_clkscaling(hba);
			if (hba->clk_scaling.workq)
				destroy_workqueue(hba->clk_scaling.workq);
		}
		ufshcd_disable_clocks(hba, false);