Re: [PATCH v4 2/3] drm/lima: Fix dma_resv deadlock at drm object pin time
From: Val Packett
Date: Sun May 26 2024 - 04:28:08 EST
On Thu, May 23 2024 at 12:32:18 +01:00:00, Adrián Larumbe
<adrian.larumbe@xxxxxxxxxxxxx> wrote:
Commit a78027847226 ("drm/gem: Acquire reservation lock in
drm_gem_{pin/unpin}()") moved locking the DRM object's dma
reservation to
drm_gem_pin(), but Lima's pin callback kept calling drm_gem_shmem_pin,
which also tries to lock the same dma_resv, leading to a double lock
situation.
As was already done for Panfrost in the previous commit, fix it by
replacing drm_gem_shmem_pin() with its locked variant.
Hi, just found this while dealing with compositor lockups upon
launching a GL client on an old Rockchip RK3066 tablet, and it did fix
the problem :) Thank you.
Tested-by: Val Packett <val@xxxxxxxxxxxx>