diff options
| author | Haotian Zhang <vulab@iscas.ac.cn> | 2025-12-14 17:58:03 +0300 |
|---|---|---|
| committer | Lee Jones <lee@kernel.org> | 2026-01-22 17:22:26 +0300 |
| commit | 4feb753ba6e5e5bbaba868b841a2db41c21e56fa (patch) | |
| tree | 125ad355e26730158183dd4149019cad8afc39b6 | |
| parent | 20117c92bcf9c11afd64d7481d8f94fdf410726e (diff) | |
| download | linux-4feb753ba6e5e5bbaba868b841a2db41c21e56fa.tar.xz | |
mfd: arizona: Fix regulator resource leak on wm5102_clear_write_sequencer() failure
The wm5102_clear_write_sequencer() helper may return an error
and just return, bypassing the cleanup sequence and causing
regulators to remain enabled, leading to a resource leak.
Change the direct return to jump to the err_reset label to
properly free the resources.
Fixes: 1c1c6bba57f5 ("mfd: wm5102: Ensure we always boot the device fully")
Signed-off-by: Haotian Zhang <vulab@iscas.ac.cn>
Reviewed-by: Charles Keepax <ckeepax@opensource.cirrus.com>
Link: https://patch.msgid.link/20251214145804.2037-1-vulab@iscas.ac.cn
Signed-off-by: Lee Jones <lee@kernel.org>
| -rw-r--r-- | drivers/mfd/arizona-core.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/mfd/arizona-core.c b/drivers/mfd/arizona-core.c index 85ff8717d850..91975536d14d 100644 --- a/drivers/mfd/arizona-core.c +++ b/drivers/mfd/arizona-core.c @@ -1100,7 +1100,7 @@ int arizona_dev_init(struct arizona *arizona) } else if (val & 0x01) { ret = wm5102_clear_write_sequencer(arizona); if (ret) - return ret; + goto err_reset; } break; default: |
