Message ID | 20200418134703.1760-1-tangbin@cmss.chinamobile.com (mailing list archive) |
---|---|
State | Accepted |
Commit | b52649aee6243ea661905bdc5fbe28cc5f6dec76 |
Headers | show |
Series | [v2] iommu/qcom:fix local_base status check | expand |
On Sat 18 Apr 06:47 PDT 2020, Tang Bin wrote: > The function qcom_iommu_device_probe() does not perform sufficient > error checking after executing devm_ioremap_resource(), which can > result in crashes if a critical error path is encountered. > Thanks, that's much better. Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org> Regards, Bjorn > Fixes: 0ae349a0f33f ("iommu/qcom: Add qcom_iommu") > > Signed-off-by: Tang Bin <tangbin@cmss.chinamobile.com> > --- > v2: > - fix commit message and add fixed tag > --- > drivers/iommu/qcom_iommu.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/drivers/iommu/qcom_iommu.c b/drivers/iommu/qcom_iommu.c > index 4328da0b0..b160cf140 100644 > --- a/drivers/iommu/qcom_iommu.c > +++ b/drivers/iommu/qcom_iommu.c > @@ -813,8 +813,11 @@ static int qcom_iommu_device_probe(struct platform_device *pdev) > qcom_iommu->dev = dev; > > res = platform_get_resource(pdev, IORESOURCE_MEM, 0); > - if (res) > + if (res) { > qcom_iommu->local_base = devm_ioremap_resource(dev, res); > + if (IS_ERR(qcom_iommu->local_base)) > + return PTR_ERR(qcom_iommu->local_base); > + } > > qcom_iommu->iface_clk = devm_clk_get(dev, "iface"); > if (IS_ERR(qcom_iommu->iface_clk)) { > -- > 2.20.1.windows.1 > > >
On Sat, Apr 18, 2020 at 09:47:03PM +0800, Tang Bin wrote: > The function qcom_iommu_device_probe() does not perform sufficient > error checking after executing devm_ioremap_resource(), which can > result in crashes if a critical error path is encountered. > > Fixes: 0ae349a0f33f ("iommu/qcom: Add qcom_iommu") > > Signed-off-by: Tang Bin <tangbin@cmss.chinamobile.com> > --- > v2: > - fix commit message and add fixed tag > --- > drivers/iommu/qcom_iommu.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) Applied for v5.7, thanks.
On 2020/5/1 19:37, Joerg Roedel wrote: > On Sat, Apr 18, 2020 at 09:47:03PM +0800, Tang Bin wrote: >> The function qcom_iommu_device_probe() does not perform sufficient >> error checking after executing devm_ioremap_resource(), which can >> result in crashes if a critical error path is encountered. >> >> Fixes: 0ae349a0f33f ("iommu/qcom: Add qcom_iommu") >> >> Signed-off-by: Tang Bin <tangbin@cmss.chinamobile.com> >> --- >> v2: >> - fix commit message and add fixed tag >> --- >> drivers/iommu/qcom_iommu.c | 5 ++++- >> 1 file changed, 4 insertions(+), 1 deletion(-) > Applied for v5.7, thanks. Thank you very much. Tang Bin >
diff --git a/drivers/iommu/qcom_iommu.c b/drivers/iommu/qcom_iommu.c index 4328da0b0..b160cf140 100644 --- a/drivers/iommu/qcom_iommu.c +++ b/drivers/iommu/qcom_iommu.c @@ -813,8 +813,11 @@ static int qcom_iommu_device_probe(struct platform_device *pdev) qcom_iommu->dev = dev; res = platform_get_resource(pdev, IORESOURCE_MEM, 0); - if (res) + if (res) { qcom_iommu->local_base = devm_ioremap_resource(dev, res); + if (IS_ERR(qcom_iommu->local_base)) + return PTR_ERR(qcom_iommu->local_base); + } qcom_iommu->iface_clk = devm_clk_get(dev, "iface"); if (IS_ERR(qcom_iommu->iface_clk)) {
The function qcom_iommu_device_probe() does not perform sufficient error checking after executing devm_ioremap_resource(), which can result in crashes if a critical error path is encountered. Fixes: 0ae349a0f33f ("iommu/qcom: Add qcom_iommu") Signed-off-by: Tang Bin <tangbin@cmss.chinamobile.com> --- v2: - fix commit message and add fixed tag --- drivers/iommu/qcom_iommu.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)