]> git.apps.os.sepia.ceph.com Git - ceph-client.git/commit
accel/ivpu: Prevent recovery work from being queued during device removal
authorKarol Wachowski <karol.wachowski@intel.com>
Fri, 8 Aug 2025 11:09:39 +0000 (13:09 +0200)
committerJacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com>
Mon, 1 Sep 2025 10:37:21 +0000 (12:37 +0200)
commit69a79ada8eb034ce016b5b78fb7d08d8687223de
treea72989e606ca1c4f048d1c465531ecd643f457fb
parent2cb66ae6040fd3cb058c3391b180f378fc0e3e2f
accel/ivpu: Prevent recovery work from being queued during device removal

Use disable_work_sync() instead of cancel_work_sync() in ivpu_dev_fini()
to ensure that no new recovery work items can be queued after device
removal has started. Previously, recovery work could be scheduled even
after canceling existing work, potentially leading to use-after-free
bugs if recovery accessed freed resources.

Rename ivpu_pm_cancel_recovery() to ivpu_pm_disable_recovery() to better
reflect its new behavior.

Fixes: 58cde80f45a2 ("accel/ivpu: Use dedicated work for job timeout detection")
Cc: stable@vger.kernel.org # v6.8+
Signed-off-by: Karol Wachowski <karol.wachowski@intel.com>
Reviewed-by: Lizhi Hou <lizhi.hou@amd.com>
Signed-off-by: Jacek Lawrynowicz <jacek.lawrynowicz@linux.intel.com>
Link: https://lore.kernel.org/r/20250808110939.328366-1-jacek.lawrynowicz@linux.intel.com
drivers/accel/ivpu/ivpu_drv.c
drivers/accel/ivpu/ivpu_pm.c
drivers/accel/ivpu/ivpu_pm.h