[Freedreno] [PATCH] drm/msm/dsi: invalid parameter check in msm_dsi_phy_enable

Dmitry Baryshkov dmitry.baryshkov at linaro.org
Tue Jan 25 02:00:18 UTC 2022


On 16/01/2022 21:18, José Expósito wrote:
> The function performs a check on the "phy" input parameter, however, it
> is used before the check.
> 
> Initialize the "dev" variable after the sanity check to avoid a possible
> NULL pointer dereference.
> 
> Fixes: 5c8290284402b ("drm/msm/dsi: Split PHY drivers to separate files")
> Addresses-Coverity-ID: 1493860 ("Null pointer dereference")
> Signed-off-by: José Expósito <jose.exposito89 at gmail.com>

Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov at linaro.org>

> ---
>   drivers/gpu/drm/msm/dsi/phy/dsi_phy.c | 4 +++-
>   1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/msm/dsi/phy/dsi_phy.c b/drivers/gpu/drm/msm/dsi/phy/dsi_phy.c
> index 9842e04b5858..baa6af0c3bcc 100644
> --- a/drivers/gpu/drm/msm/dsi/phy/dsi_phy.c
> +++ b/drivers/gpu/drm/msm/dsi/phy/dsi_phy.c
> @@ -808,12 +808,14 @@ int msm_dsi_phy_enable(struct msm_dsi_phy *phy,
>   			struct msm_dsi_phy_clk_request *clk_req,
>   			struct msm_dsi_phy_shared_timings *shared_timings)
>   {
> -	struct device *dev = &phy->pdev->dev;
> +	struct device *dev;
>   	int ret;
>   
>   	if (!phy || !phy->cfg->ops.enable)
>   		return -EINVAL;
>   
> +	dev = &phy->pdev->dev;
> +
>   	ret = dsi_phy_enable_resource(phy);
>   	if (ret) {
>   		DRM_DEV_ERROR(dev, "%s: resource enable failed, %d\n",


-- 
With best wishes
Dmitry


More information about the Freedreno mailing list