Message ID | 20190826223317.28509-1-robh@kernel.org |
---|---|
Headers | show |
Series | panfrost: Locking and runtime PM fixes | expand |
A-b from me; let's see what others say. On Mon, Aug 26, 2019 at 05:33:09PM -0500, Rob Herring wrote: > With further testing of recent changes with lockdep identified some > locking issues. Avoiding lockdep issues means we need to avoid some > locks in panfrost_mmu_unmap which in turn means avoiding runtime PM > resume. In the process of re-working runtime PM several runtime PM > and locking clean-ups have been identified. > > v3: > - Applied patches 1, 4, 5, and 6 > - Fix race in job timeout handling with ISR > - Remove some no longer needed locks > - Fix panfrost_mmu_unmap when autosuspend delay is > 0 > - Disable AS MMU when freeing page tables > > v2: > - Drop already applied 'drm/panfrost: Fix sleeping while atomic in > panfrost_gem_open' > - Runtime PM clean-ups > - Keep panfrost_gem_purge and use mutex_trylock there > - Rework panfrost_mmu_unmap runtime PM > > Rob > > Rob Herring (8): > drm/panfrost: Rework runtime PM initialization > drm/panfrost: Hold runtime PM reference until jobs complete > drm/panfrost: Remove unnecessary mmu->lock mutex > drm/panfrost: Rework page table flushing and runtime PM interaction > drm/panfrost: Split mmu_hw_do_operation into locked and unlocked > version > drm/panfrost: Add cache/TLB flush before switching address space > drm/panfrost: Flush and disable address space when freeing page tables > drm/panfrost: Remove unnecessary hwaccess_lock spin_lock > > drivers/gpu/drm/panfrost/panfrost_device.c | 10 --- > drivers/gpu/drm/panfrost/panfrost_device.h | 3 - > drivers/gpu/drm/panfrost/panfrost_drv.c | 10 ++- > drivers/gpu/drm/panfrost/panfrost_job.c | 43 ++++++---- > drivers/gpu/drm/panfrost/panfrost_mmu.c | 91 ++++++++++------------ > 5 files changed, 76 insertions(+), 81 deletions(-) > > -- > 2.20.1