diff options
author | Li Yang <lidaxian@hust.edu.cn> | 2023-03-31 11:55:44 +0200 |
---|---|---|
committer | Geert Uytterhoeven <geert+renesas@glider.be> | 2023-04-04 10:01:58 +0200 |
commit | fc187a46a8e682f0f1167b230792b88de01ceaa0 (patch) | |
tree | ea64c766620e314d3dae42ed75ad491ac1ae3c27 /drivers | |
parent | MAINTAINERS: renesas: Add "renesas," file contents pattern (diff) | |
download | linux-fc187a46a8e682f0f1167b230792b88de01ceaa0.tar.xz linux-fc187a46a8e682f0f1167b230792b88de01ceaa0.zip |
soc: renesas: renesas-soc: Release 'chipid' from ioremap()
Smatch reports:
drivers/soc/renesas/renesas-soc.c:536 renesas_soc_init() warn:
'chipid' from ioremap() not released on lines: 475.
If soc_dev_atrr allocation is failed, function renesas_soc_init()
will return without releasing 'chipid' from ioremap().
Fix this by adding function iounmap().
Fixes: cb5508e47e60 ("soc: renesas: Add support for reading product revision for RZ/G2L family")
Signed-off-by: Li Yang <lidaxian@hust.edu.cn>
Reviewed-by: Dan Carpenter <error27@gmail.com>
Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
Link: https://lore.kernel.org/r/20230331095545.31823-1-lidaxian@hust.edu.cn
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/soc/renesas/renesas-soc.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/soc/renesas/renesas-soc.c b/drivers/soc/renesas/renesas-soc.c index 4ba893e45427..42af7c09f743 100644 --- a/drivers/soc/renesas/renesas-soc.c +++ b/drivers/soc/renesas/renesas-soc.c @@ -469,8 +469,11 @@ static int __init renesas_soc_init(void) } soc_dev_attr = kzalloc(sizeof(*soc_dev_attr), GFP_KERNEL); - if (!soc_dev_attr) + if (!soc_dev_attr) { + if (chipid) + iounmap(chipid); return -ENOMEM; + } np = of_find_node_by_path("/"); of_property_read_string(np, "model", &soc_dev_attr->machine); |