]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
media: venus: hfi: explicitly release IRQ during teardown
authorJorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>
Thu, 19 Jun 2025 07:48:30 +0000 (09:48 +0200)
committerHans Verkuil <hverkuil@xs4all.nl>
Thu, 3 Jul 2025 09:02:43 +0000 (11:02 +0200)
Ensure the IRQ is disabled - and all pending handlers completed - before
dismantling the interrupt routing and clearing related pointers.

This prevents any possibility of the interrupt triggering after the
handler context has been invalidated.

Fixes: d96d3f30c0f2 ("[media] media: venus: hfi: add Venus HFI files")
Cc: stable@vger.kernel.org
Signed-off-by: Jorge Ramirez-Ortiz <jorge.ramirez@oss.qualcomm.com>
Reviewed-by: Dikshita Agarwal <quic_dikshita@quicinc.com>
Tested-by: Dikshita Agarwal <quic_dikshita@quicinc.com> # RB5
Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Signed-off-by: Bryan O'Donoghue <bod@kernel.org>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
drivers/media/platform/qcom/venus/hfi_venus.c

index c982f4527bb0b9f9ef9715c6c1dc26729f0fc079..cec7f5964d3d80629895adead52506f7ffa91e6f 100644 (file)
@@ -1682,6 +1682,7 @@ void venus_hfi_destroy(struct venus_core *core)
        venus_interface_queues_release(hdev);
        mutex_destroy(&hdev->lock);
        kfree(hdev);
+       disable_irq(core->irq);
        core->ops = NULL;
 }