[PATCH -next] spmi: pmic-arb: Add check for return value of platform_get_resource_byname

Gaosheng Cui posted 1 patch 1 year, 4 months ago
There is a newer version of this series
drivers/spmi/spmi-pmic-arb.c | 3 +++
1 file changed, 3 insertions(+)
[PATCH -next] spmi: pmic-arb: Add check for return value of platform_get_resource_byname
Posted by Gaosheng Cui 1 year, 4 months ago
Add check for the return value of platform_get_resource_byname() and
return the error if it fails to catch the error.

Signed-off-by: Gaosheng Cui <cuigaosheng1@huawei.com>
---
 drivers/spmi/spmi-pmic-arb.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/spmi/spmi-pmic-arb.c b/drivers/spmi/spmi-pmic-arb.c
index 9ba9495fcc4b..5f5f2f0a10b9 100644
--- a/drivers/spmi/spmi-pmic-arb.c
+++ b/drivers/spmi/spmi-pmic-arb.c
@@ -1808,6 +1808,9 @@ static int spmi_pmic_arb_probe(struct platform_device *pdev)
 		return -ENOMEM;
 
 	res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "core");
+	if (!res)
+		return -EINVAL;
+
 	core = devm_ioremap(dev, res->start, resource_size(res));
 	if (!core)
 		return -ENOMEM;
-- 
2.25.1
Re: [PATCH -next] spmi: pmic-arb: Add check for return value of platform_get_resource_byname
Posted by Stephen Boyd 1 year, 4 months ago
Quoting Gaosheng Cui (2024-08-02 23:56:25)
> Add check for the return value of platform_get_resource_byname() and
> return the error if it fails to catch the error.
> 
> Signed-off-by: Gaosheng Cui <cuigaosheng1@huawei.com>

Is this the right fixes tag?

Fixes: b319b5922db2 ("spmi: pmic-arb: remove the read/write access checks")
Re: [PATCH -next] spmi: pmic-arb: Add check for return value of platform_get_resource_byname
Posted by cuigaosheng 1 year, 4 months ago
Thanks for your time.

I've made and submitted a patch v2, and I think the right fixes tag is 
as follows:

Fixes: 39ae93e3a31d ("spmi: Add MSM PMIC Arbiter SPMI controller")


On 2024/8/6 5:55, Stephen Boyd wrote:
> Quoting Gaosheng Cui (2024-08-02 23:56:25)
>> Add check for the return value of platform_get_resource_byname() and
>> return the error if it fails to catch the error.
>>
>> Signed-off-by: Gaosheng Cui <cuigaosheng1@huawei.com>
> Is this the right fixes tag?
>
> Fixes: b319b5922db2 ("spmi: pmic-arb: remove the read/write access checks")
> .
Re: [PATCH -next] spmi: pmic-arb: Add check for return value of platform_get_resource_byname
Posted by Stephen Boyd 1 year, 4 months ago
Quoting cuigaosheng (2024-08-06 05:06:40)
> Thanks for your time.

Please don't top post.

> 
> I've made and submitted a patch v2, and I think the right fixes tag is 
> as follows:
> 
> Fixes: 39ae93e3a31d ("spmi: Add MSM PMIC Arbiter SPMI controller")

Don't think so. If the resource isn't there, the pointer returned is
NULL, devm_ioremap_resource() would bail out early if the resource is
NULL and return an error. I suggested that fixes tag because it removed
the size check. But now I see that resource_size() on a NULL pointer
would blow up. So the real fixes tag is

Fixes: 987a9f128b8a ("spmi: pmic-arb: Support more than 128 peripherals")

because that introduced the call to resource_size() on a potentially
NULL pointer.