diff options
| author | Haotian Zhang <vulab@iscas.ac.cn> | 2025-10-10 09:17:36 +0800 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-12-18 13:54:54 +0100 |
| commit | 520de30d8c92b0f18ebd9bae0545b8c5c804434a (patch) | |
| tree | 2a079335e7cd65bdec8476cdba3310f9efc6f0b3 /drivers/mfd | |
| parent | 22b5b6262958a135b2d7eea2fb3f6d74e7b3c6a7 (diff) | |
| download | linux-520de30d8c92b0f18ebd9bae0545b8c5c804434a.tar.gz linux-520de30d8c92b0f18ebd9bae0545b8c5c804434a.tar.bz2 linux-520de30d8c92b0f18ebd9bae0545b8c5c804434a.zip | |
mfd: da9055: Fix missing regmap_del_irq_chip() in error path
[ Upstream commit 1b58acfd067ca16116b9234cd6b2d30cc8ab7502 ]
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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers/mfd')
| -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; } |
