linux/drivers/slimbus
Zongmin Zhou c26cc979e2 slimbus: messaging: fix leaked PM vote on tid allocation failure
In slim_do_transfer(), when a transaction needs a tid and
slim_alloc_txn_tid() fails, the function returns directly instead of
jumping to slim_xfer_err. The runtime PM vote taken earlier with
pm_runtime_get_sync() is then never released, leaving the controller
permanently powered up.

As txn->tid is still 0 at that point, jumping to slim_xfer_err drops
the vote exactly like it is done for other failed transactions.

Fixes: d3062a2109 ("slimbus: messaging: add slim_alloc/free_txn_tid()")
Cc: stable@vger.kernel.org
Signed-off-by: Zongmin Zhou <zhouzongmin@kylinos.cn>
Signed-off-by: Srinivas Kandagatla <srini@kernel.org>
Link: https://patch.msgid.link/20261002101448.1084691-2-srini@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2026-10-09 16:27:27 +02:00
..
core.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
Kconfig slimbus: qcom: remove unused qcom controller driver 2025-09-12 15:47:37 +02:00
Makefile slimbus: qcom: remove unused qcom controller driver 2025-09-12 15:47:37 +02:00
messaging.c slimbus: messaging: fix leaked PM vote on tid allocation failure 2026-10-09 16:27:27 +02:00
qcom-ngd-ctrl.c slimbus: qcom-ngd-ctrl: Implement disable_stream callback 2026-10-02 13:12:00 +02:00
sched.c slimbus: Add support for 'clock-pause' feature 2017-12-19 11:01:03 +01:00
slimbus.h slimbus: qcom-ngd-ctrl: Implement disable_stream callback 2026-10-02 13:12:00 +02:00
stream.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00