mirror of
https://github.com/torvalds/linux.git
synced 2026-11-07 06:17:02 +01:00
media: mediatek: vpu: release reserved memory on remove
mtk_vpu_probe() may assign a reserved memory region to the VPU device
with of_reserved_mem_device_init(). The probe failure path releases the
assignment with of_reserved_mem_device_release(), but the normal remove
path does not perform the corresponding cleanup.
As a result, removing the VPU driver after a successful probe can leave
the reserved memory assignment associated with the device after its
lifetime has ended.
Release the reserved memory assignment after freeing the VPU external
firmware memory, matching the cleanup performed by the probe failure
path.
This issue was found by manual code inspection.
Fixes: 3003a180ef ("[media] VPU: mediatek: support Mediatek VPU")
Cc: stable@vger.kernel.org
Signed-off-by: Guangshuo Li <lgs201920130244@gmail.com>
Reviewed-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
This commit is contained in:
parent
ceb6e96122
commit
8af0e2bdd9
|
|
@ -967,6 +967,7 @@ static void mtk_vpu_remove(struct platform_device *pdev)
|
|||
destroy_workqueue(vpu->wdt.wq);
|
||||
vpu_free_ext_mem(vpu, P_FW);
|
||||
vpu_free_ext_mem(vpu, D_FW);
|
||||
of_reserved_mem_device_release(&pdev->dev);
|
||||
mutex_destroy(&vpu->vpu_mutex);
|
||||
clk_unprepare(vpu->clk);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user