On 11/02/17 00:54, Alexey Khoroshilov wrote:
> There is no check if clk_prepare_enable() succeed in sdhci_pxav2_probe().
> 
> Found by Linux Driver Verification project (linuxtesting.org).
> 
> Signed-off-by: Alexey Khoroshilov <khoroshi...@ispras.ru>

Acked-by: Adrian Hunter <adrian.hun...@intel.com>

> ---
>  drivers/mmc/host/sdhci-pxav2.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/mmc/host/sdhci-pxav2.c b/drivers/mmc/host/sdhci-pxav2.c
> index 347eae2d7b6a..80513f54e9d4 100644
> --- a/drivers/mmc/host/sdhci-pxav2.c
> +++ b/drivers/mmc/host/sdhci-pxav2.c
> @@ -185,7 +185,11 @@ static int sdhci_pxav2_probe(struct platform_device 
> *pdev)
>               goto err_clk_get;
>       }
>       pltfm_host->clk = clk;
> -     clk_prepare_enable(clk);
> +     ret = clk_prepare_enable(clk);
> +     if (ret) {
> +             dev_err(&pdev->dev, "failed to enable io clock\n");
> +             goto err_clk_enable;
> +     }
>  
>       host->quirks = SDHCI_QUIRK_BROKEN_ADMA
>               | SDHCI_QUIRK_BROKEN_TIMEOUT_VAL
> @@ -228,6 +232,7 @@ static int sdhci_pxav2_probe(struct platform_device *pdev)
>  
>  err_add_host:
>       clk_disable_unprepare(clk);
> +err_clk_enable:
>       clk_put(clk);
>  err_clk_get:
>       sdhci_pltfm_free(pdev);
> 

Reply via email to