]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/panthor: Fix NULL pointer dereference on panthor_fw_unplug
authorKarunika Choo <karunika.choo@arm.com>
Mon, 15 Dec 2025 20:33:12 +0000 (20:33 +0000)
committerBoris Brezillon <boris.brezillon@collabora.com>
Wed, 17 Dec 2025 13:15:24 +0000 (14:15 +0100)
This patch removes the MCU halt and wait for halt procedures during
panthor_fw_unplug() as the MCU can be in a variety of states or the FW
may not even be loaded/initialized at all, the latter of which can lead
to a NULL pointer dereference.

It should be safe on unplug to just disable the MCU without waiting for
it to halt as it may not be able to.

Fixes: 514072549865 ("drm/panthor: Support GLB_REQ.STATE field for Mali-G1 GPUs")
Suggested-by: Boris Brezillon <boris.brezillon@collabora.com>
Signed-off-by: Karunika Choo <karunika.choo@arm.com>
Reviewed-by: Liviu Dudau <liviu@dudau.co.uk>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Link: https://patch.msgid.link/20251215203312.1084182-1-karunika.choo@arm.com
Signed-off-by: Boris Brezillon <boris.brezillon@collabora.com>
drivers/gpu/drm/panthor/panthor_fw.c

index 4beaa589ba66cd837a2d7c5403a7173a106afe0c..a64ec8756bed23fd1e61590b3d07b51ef983de11 100644 (file)
@@ -1261,10 +1261,6 @@ void panthor_fw_unplug(struct panthor_device *ptdev)
                if (ptdev->fw->irq.irq)
                        panthor_job_irq_suspend(&ptdev->fw->irq);
 
-               panthor_fw_halt_mcu(ptdev);
-               if (!panthor_fw_wait_mcu_halted(ptdev))
-                       drm_warn(&ptdev->base, "Failed to halt MCU on unplug");
-
                panthor_fw_stop(ptdev);
        }