Message ID | 20250410110421.77580-1-hanchunchao@inspur.com |
---|---|
State | New |
Headers | show |
Series | interconnect: samsung: Add NULL check in exynos_generic_icc_probe | expand |
On 10/04/2025 13:04, Charles Han wrote: > devm_kasprintf() can return a NULL pointer on failure,but this > returned value in exynos_generic_icc_probe() is not checked. > Add NULL check in exynos_generic_icc_probe(), to handle kernel NULL > pointer dereference error. > > Fixes: 2f95b9d5cf0b ("interconnect: Add generic interconnect driver for Exynos SoCs") > Signed-off-by: Charles Han <hanchunchao@inspur.com> > --- > drivers/interconnect/samsung/exynos.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/interconnect/samsung/exynos.c b/drivers/interconnect/samsung/exynos.c > index 9e041365d909..f3568f0d92d1 100644 > --- a/drivers/interconnect/samsung/exynos.c > +++ b/drivers/interconnect/samsung/exynos.c > @@ -134,6 +134,11 @@ static int exynos_generic_icc_probe(struct platform_device *pdev) > priv->node = icc_node; > icc_node->name = devm_kasprintf(&pdev->dev, GFP_KERNEL, "%pOFn", > bus_dev->of_node); > + if (!icc_node->name) { > + devm_kfree(&pdev->dev, priv); Instead of doing some scripting changes you need to look at the code. Look at other error paths, how they are doing it. Otherwise please explain why you need to release a managed resource? Best regards, Krzysztof
diff --git a/drivers/interconnect/samsung/exynos.c b/drivers/interconnect/samsung/exynos.c index 9e041365d909..f3568f0d92d1 100644 --- a/drivers/interconnect/samsung/exynos.c +++ b/drivers/interconnect/samsung/exynos.c @@ -134,6 +134,11 @@ static int exynos_generic_icc_probe(struct platform_device *pdev) priv->node = icc_node; icc_node->name = devm_kasprintf(&pdev->dev, GFP_KERNEL, "%pOFn", bus_dev->of_node); + if (!icc_node->name) { + devm_kfree(&pdev->dev, priv); + return -ENOMEM; + } + if (of_property_read_u32(bus_dev->of_node, "samsung,data-clock-ratio", &priv->bus_clk_ratio)) priv->bus_clk_ratio = EXYNOS_ICC_DEFAULT_BUS_CLK_RATIO;
devm_kasprintf() can return a NULL pointer on failure,but this returned value in exynos_generic_icc_probe() is not checked. Add NULL check in exynos_generic_icc_probe(), to handle kernel NULL pointer dereference error. Fixes: 2f95b9d5cf0b ("interconnect: Add generic interconnect driver for Exynos SoCs") Signed-off-by: Charles Han <hanchunchao@inspur.com> --- drivers/interconnect/samsung/exynos.c | 5 +++++ 1 file changed, 5 insertions(+)