mirror of
https://github.com/torvalds/linux.git
synced 2026-10-26 00:56:03 +01:00
xpcs_init_clks() takes references with clk_bulk_get_optional() and then
enables them with clk_bulk_prepare_enable(). If the enable step fails,
the function returns without dropping the references.
xpcs_create() handles the failure through out_free_data, which calls
xpcs_free_data() but never xpcs_clear_clks(), so the clk references are
leaked.
Add the missing clk_bulk_put() on the enable failure path. The
prepare/enable side is already rolled back by
clk_bulk_prepare_enable() itself.
Fixes:
|
||
|---|---|---|
| .. | ||
| Kconfig | ||
| Makefile | ||
| pcs-lynx.c | ||
| pcs-mtk-lynxi.c | ||
| pcs-rzn1-miic.c | ||
| pcs-xpcs-nxp.c | ||
| pcs-xpcs-plat.c | ||
| pcs-xpcs-wx.c | ||
| pcs-xpcs.c | ||
| pcs-xpcs.h | ||