RE: [PATCH v8 3/3] remoteproc: qcom: q6v5_wpss: Add support for sc7280 WPSS

From: Rakesh Pillai
Date: Wed Nov 17 2021 - 01:32:05 EST




> -----Original Message-----
> From: Stephen Boyd <swboyd@xxxxxxxxxxxx>
> Sent: Wednesday, November 17, 2021 4:25 AM
> To: Rakesh Pillai <pillair@xxxxxxxxxxxxxx>; agross@xxxxxxxxxx;
> bjorn.andersson@xxxxxxxxxx; mathieu.poirier@xxxxxxxxxx; ohad@xxxxxxxxxx;
> p.zabel@xxxxxxxxxxxxxx; robh+dt@xxxxxxxxxx
> Cc: linux-arm-msm@xxxxxxxxxxxxxxx; linux-remoteproc@xxxxxxxxxxxxxxx;
> devicetree@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> sibis@xxxxxxxxxxxxxx; mpubbise@xxxxxxxxxxxxxx; kuabhs@xxxxxxxxxxxx
> Subject: Re: [PATCH v8 3/3] remoteproc: qcom: q6v5_wpss: Add support for
> sc7280 WPSS
>
> Quoting Rakesh Pillai (2021-11-02 06:44:33)
> > @@ -457,7 +608,13 @@ static int adsp_probe(struct platform_device
> *pdev)
> > if (ret)
> > goto free_rproc;
> >
> > - pm_runtime_enable(adsp->dev);
> > + ret = qcom_rproc_pds_attach(adsp->dev, adsp->proxy_pds,
> > + desc->proxy_pd_names);
> > + if (ret < 0) {
> > + dev_err(&pdev->dev, "Failed to attach proxy power domains\n");
> > + goto free_rproc;
> > + }
> > + adsp->proxy_pd_count = ret;
>
> Can we check this against the define so that we don't have more than the
> fixed number of power domains and try to access elements beyond the
> length of the array?

The number of entries populated in the "proxy_pds" array depends on the "desc->proxy_pd_names", which is statically
initialized for each remoteproc. Hence there will not be any out of bound access for this array.

Thanks,
Rakesh Pillai.