Commit 1f49a55
committed
regmap: fix potential memory leak of regmap_bus
JIRA: https://issues.redhat.com/browse/RHEL-109251
commit c871c19
Author: Abdun Nihaal <abdun.nihaal@gmail.com>
Date: Sun, 29 Jun 2025 22:10:36 +0000
When __regmap_init() is called from __regmap_init_i2c() and
__regmap_init_spi() (and their devm versions), the bus argument
obtained from regmap_get_i2c_bus() and regmap_get_spi_bus(), may be
allocated using kmemdup() to support quirks. In those cases, the
bus->free_on_exit field is set to true.
However, inside __regmap_init(), buf is not freed on any error path.
This could lead to a memory leak of regmap_bus when __regmap_init()
fails. Fix that by freeing bus on error path when free_on_exit is set.
Fixes: ea030ca ("regmap-i2c: Set regmap max raw r/w from quirks")
Signed-off-by: Abdun Nihaal <abdun.nihaal@gmail.com>
Link: https://patch.msgid.link/20250626172823.18725-1-abdun.nihaal@gmail.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Mark Langsdorf <mlangsdo@redhat.com>1 parent 5539fdf commit 1f49a55
1 file changed
+2
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1173 | 1173 | | |
1174 | 1174 | | |
1175 | 1175 | | |
| 1176 | + | |
| 1177 | + | |
1176 | 1178 | | |
1177 | 1179 | | |
1178 | 1180 | | |
| |||
0 commit comments