lkml.org 
[lkml]   [2016]   [Nov]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2] ufs: qcom: Properly clear hba priv on failure
On 2016-11-19 22:34, Bjorn Andersson wrote:
> ufs_qcom_init() sets the hba priv data before attempting to acquire the
> phy handle, so make sure to clear this in the case of an error. Failing
> to do this will make ufs_qcom_setup_clocks() operate on the
> uninitalized
> host object.
>
> Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
> ---
> drivers/scsi/ufs/ufs-qcom.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/scsi/ufs/ufs-qcom.c b/drivers/scsi/ufs/ufs-qcom.c
> index d345434b084f..4de372d271b0 100644
> --- a/drivers/scsi/ufs/ufs-qcom.c
> +++ b/drivers/scsi/ufs/ufs-qcom.c
> @@ -1197,12 +1197,12 @@ static int ufs_qcom_init(struct ufs_hba *hba)
> if (IS_ERR(host->generic_phy)) {
> err = PTR_ERR(host->generic_phy);
> dev_err(dev, "%s: PHY get failed %d\n", __func__, err);
> - goto out;
> + goto out_variant_clear;
> }
>
> err = ufs_qcom_bus_register(host);
> if (err)
> - goto out_host_free;
> + goto out_variant_clear;
>
> ufs_qcom_get_controller_revision(hba, &host->hw_ver.major,
> &host->hw_ver.minor, &host->hw_ver.step);
> @@ -1267,7 +1267,7 @@ static int ufs_qcom_init(struct ufs_hba *hba)
> phy_power_off(host->generic_phy);
> out_unregister_bus:
> phy_exit(host->generic_phy);
> -out_host_free:
> +out_variant_clear:
> ufshcd_set_variant(hba, NULL);
> out:
> return err;

Looks good to me.
Reviewed-by: Subhash Jadavani <subhashj@codeaurora.org>

--
The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project

\
 
 \ /
  Last update: 2016-11-21 19:34    [W:0.052 / U:0.084 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site