[PATCH v5 0/2] media: amd: isp4: fix error handling in isp4sd_pwron_and_init()
Yifei Gao <[email protected]>
| Newsgroups | org.kernel.vger.linux-media,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
This series fixes the error handling in isp4sd_pwron_and_init(). Patch 1 makes isp4if_alloc_fw_gpumem() release partial allocations on failure, an independent leak that was previously masked by the deadlock fixed in patch 2. Patch 2 reworks the power-on error path into staged cleanup, fixing the self-deadlock and, once it is gone, the runtime-PM imbalance and unpowered MMIO access. The staged path relies on isp4if_start() cleaning up fully on failure, which patch 1 completes, so patch 1 comes first. Changes since v4: - Made isp4if_gpu_mem_free() silent on NULL entries, which are expected during partial-allocation cleanup, per Bin Du's review. Changes since v3: - Trimmed the commit message of patch 2 per Sakari's review; no functional change. Changes since v2: - Added patch 1 to release partial allocations in isp4if_alloc_fw_gpumem(), as pointed out by Bin Du. - Patch 2 is otherwise unchanged from v2. v4: https://lore.kernel.org/linux-media/[email protected]/ v3: https://lore.kernel.org/linux-media/[email protected]/ v2: https://lore.kernel.org/linux-media/[email protected]/ v1: https://lore.kernel.org/linux-media/[email protected]/ Yifei Gao (2): media: amd: isp4: release partial allocations in isp4if_alloc_fw_gpumem() media: amd: isp4: fix self-deadlock in isp4sd_pwron_and_init() error path .../media/platform/amd/isp4/isp4_interface.c | 6 ++-- drivers/media/platform/amd/isp4/isp4_subdev.c | 28 +++++++++++++++---- 2 files changed, 24 insertions(+), 10 deletions(-) -- 2.43.0