Skip to content

Commit 11a954e

Browse files
Wei Yongjunherbertx
authored andcommitted
crypto: ingenic - Drop kfree for memory allocated with devm_kzalloc
It's not necessary to free memory allocated with devm_kzalloc and using kfree leads to a double free. Fixes: 190873a ("crypto: ingenic - Add hardware RNG for Ingenic JZ4780 and X1000") Reported-by: Hulk Robot <[email protected]> Signed-off-by: Wei Yongjun <[email protected]> Reviewed-by: 周琰杰 (Zhou Yanjie) <[email protected]> Signed-off-by: Herbert Xu <[email protected]>
1 parent 9a5a668 commit 11a954e

File tree

1 file changed

+2
-7
lines changed

1 file changed

+2
-7
lines changed

drivers/char/hw_random/ingenic-rng.c

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -92,8 +92,7 @@ static int ingenic_rng_probe(struct platform_device *pdev)
9292
priv->base = devm_platform_ioremap_resource(pdev, 0);
9393
if (IS_ERR(priv->base)) {
9494
pr_err("%s: Failed to map RNG registers\n", __func__);
95-
ret = PTR_ERR(priv->base);
96-
goto err_free_rng;
95+
return PTR_ERR(priv->base);
9796
}
9897

9998
priv->version = (enum ingenic_rng_version)of_device_get_match_data(&pdev->dev);
@@ -106,17 +105,13 @@ static int ingenic_rng_probe(struct platform_device *pdev)
106105
ret = hwrng_register(&priv->rng);
107106
if (ret) {
108107
dev_err(&pdev->dev, "Failed to register hwrng\n");
109-
goto err_free_rng;
108+
return ret;
110109
}
111110

112111
platform_set_drvdata(pdev, priv);
113112

114113
dev_info(&pdev->dev, "Ingenic RNG driver registered\n");
115114
return 0;
116-
117-
err_free_rng:
118-
kfree(priv);
119-
return ret;
120115
}
121116

122117
static int ingenic_rng_remove(struct platform_device *pdev)

0 commit comments

Comments
 (0)