Re: [PATCH] memory: stm32_omm: fix child clock leak on set_amcr() error path

From: Krzysztof Kozlowski

Date: Wed Sep 23 2026 - 14:02:07 EST



On Thu, 17 Sep 2026 17:59:25 -0600, Diego Fernando Mancera Gomez wrote:
> When the mux is enabled, stm32_omm_configure() enables the two OSPI
> child clocks via stm32_omm_toggle_child_clock(dev, true); they are meant
> to stay enabled for the device's lifetime and are disabled again in
> stm32_omm_remove() and on the devm_of_platform_populate() error path.
>
> However, if the subsequent stm32_omm_set_amcr() call fails, the function
> jumps to the "error:" label which only calls pm_runtime_put_sync_suspend()
> before returning, leaving the two child clocks enabled. As this happens
> during probe, the error is propagated and .remove() is never called, so
> the clock enable references are leaked. devm_clk_bulk_get() only releases
> the clock handles on unwind, it does not undo clk_prepare_enable().
>
> [...]

Applied, thanks!

[1/1] memory: stm32_omm: fix child clock leak on set_amcr() error path
https://git.kernel.org/krzk/linux-mem-ctrl/c/a22355280361d2a376a2020059a2bae11e6cea10

Best regards,
--
Krzysztof Kozlowski <krzk@xxxxxxxxxx>