diff options
| author | Haotian Zhang <vulab@iscas.ac.cn> | 2025-10-10 09:17:36 +0800 |
|---|---|---|
| committer | Lee Jones <lee@kernel.org> | 2025-11-06 14:03:52 +0000 |
| commit | 1b58acfd067ca16116b9234cd6b2d30cc8ab7502 (patch) | |
| tree | 9d409e2354661cbe96e24b92c9e10e4a0bf4c34c | |
| parent | c19e675a3c82aeee99f7007f6cfbd5b292167cbb (diff) | |
mfd: da9055: Fix missing regmap_del_irq_chip() in error path
When da9055_device_init() fails after regmap_add_irq_chip()
succeeds but mfd_add_devices() fails, the error handling path
only calls mfd_remove_devices() but forgets to call
regmap_del_irq_chip(). This results in a resource leak.
Fix this by adding regmap_del_irq_chip() to the error path so
that resources are released properly.
Fixes: 2896434cf272 ("mfd: DA9055 core driver")
Signed-off-by: Haotian Zhang <vulab@iscas.ac.cn>
Link: https://patch.msgid.link/20251010011737.1078-1-vulab@iscas.ac.cn
Signed-off-by: Lee Jones <lee@kernel.org>
| -rw-r--r-- | drivers/mfd/da9055-core.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/mfd/da9055-core.c b/drivers/mfd/da9055-core.c index 1f727ef60d63..8c989b74f924 100644 --- a/drivers/mfd/da9055-core.c +++ b/drivers/mfd/da9055-core.c @@ -388,6 +388,7 @@ int da9055_device_init(struct da9055 *da9055) err: mfd_remove_devices(da9055->dev); + regmap_del_irq_chip(da9055->chip_irq, da9055->irq_data); return ret; } |
