In case of error, devm_ioremap_resource() returns ERR_PTR(),
and never returns NULL. The NULL test in the return value
check should be replaced with IS_ERR().
Fixes: cf7b61073e45 ("drivers/perf: add DDR Sub-System Driveway PMU driver for Yitian 710 SoC")
Signed-off-by: Sun Ke <[email protected]>
---
drivers/perf/alibaba_uncore_drw_pmu.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/perf/alibaba_uncore_drw_pmu.c b/drivers/perf/alibaba_uncore_drw_pmu.c
index 82729b874f09..a7689fecb49d 100644
--- a/drivers/perf/alibaba_uncore_drw_pmu.c
+++ b/drivers/perf/alibaba_uncore_drw_pmu.c
@@ -658,8 +658,8 @@ static int ali_drw_pmu_probe(struct platform_device *pdev)
res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
drw_pmu->cfg_base = devm_ioremap_resource(&pdev->dev, res);
- if (!drw_pmu->cfg_base)
- return -ENOMEM;
+ if (IS_ERR(drw_pmu->cfg_base))
+ return PTR_ERR(drw_pmu->cfg_base);
name = devm_kasprintf(drw_pmu->dev, GFP_KERNEL, "ali_drw_%llx",
(u64) (res->start >> ALI_DRW_PMU_PA_SHIFT));
--
2.31.1
在 2022/9/24 AM11:21, Sun Ke 写道:
> In case of error, devm_ioremap_resource() returns ERR_PTR(),
> and never returns NULL. The NULL test in the return value
> check should be replaced with IS_ERR().
>
> Fixes: cf7b61073e45 ("drivers/perf: add DDR Sub-System Driveway PMU driver for Yitian 710 SoC")
> Signed-off-by: Sun Ke <[email protected]>
Good catch, thank you for fixing.
Reviewed-by: Shuai Xue <[email protected]>
Cheers,
Shuai
> ---
> drivers/perf/alibaba_uncore_drw_pmu.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/perf/alibaba_uncore_drw_pmu.c b/drivers/perf/alibaba_uncore_drw_pmu.c
> index 82729b874f09..a7689fecb49d 100644
> --- a/drivers/perf/alibaba_uncore_drw_pmu.c
> +++ b/drivers/perf/alibaba_uncore_drw_pmu.c
> @@ -658,8 +658,8 @@ static int ali_drw_pmu_probe(struct platform_device *pdev)
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> drw_pmu->cfg_base = devm_ioremap_resource(&pdev->dev, res);
> - if (!drw_pmu->cfg_base)
> - return -ENOMEM;
> + if (IS_ERR(drw_pmu->cfg_base))
> + return PTR_ERR(drw_pmu->cfg_base);
>
> name = devm_kasprintf(drw_pmu->dev, GFP_KERNEL, "ali_drw_%llx",
> (u64) (res->start >> ALI_DRW_PMU_PA_SHIFT));
On Sat, Sep 24, 2022 at 11:21:27AM +0800, Sun Ke wrote:
> In case of error, devm_ioremap_resource() returns ERR_PTR(),
> and never returns NULL. The NULL test in the return value
> check should be replaced with IS_ERR().
>
> Fixes: cf7b61073e45 ("drivers/perf: add DDR Sub-System Driveway PMU driver for Yitian 710 SoC")
> Signed-off-by: Sun Ke <[email protected]>
> ---
> drivers/perf/alibaba_uncore_drw_pmu.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/perf/alibaba_uncore_drw_pmu.c b/drivers/perf/alibaba_uncore_drw_pmu.c
> index 82729b874f09..a7689fecb49d 100644
> --- a/drivers/perf/alibaba_uncore_drw_pmu.c
> +++ b/drivers/perf/alibaba_uncore_drw_pmu.c
> @@ -658,8 +658,8 @@ static int ali_drw_pmu_probe(struct platform_device *pdev)
>
> res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> drw_pmu->cfg_base = devm_ioremap_resource(&pdev->dev, res);
> - if (!drw_pmu->cfg_base)
> - return -ENOMEM;
> + if (IS_ERR(drw_pmu->cfg_base))
> + return PTR_ERR(drw_pmu->cfg_base);
>
> name = devm_kasprintf(drw_pmu->dev, GFP_KERNEL, "ali_drw_%llx",
> (u64) (res->start >> ALI_DRW_PMU_PA_SHIFT));
Acked-by: Will Deacon <[email protected]>
Catalin can pick this one up as a fix.
Cheers,
Will
On Sat, 24 Sep 2022 11:21:27 +0800, Sun Ke wrote:
> In case of error, devm_ioremap_resource() returns ERR_PTR(),
> and never returns NULL. The NULL test in the return value
> check should be replaced with IS_ERR().
>
>
Applied to arm64 (for-next/core), thanks!
[1/1] drivers/perf: fix return value check in ali_drw_pmu_probe()
https://git.kernel.org/arm64/c/ad0112f2d54c
--
Catalin