Re: [PATCH v6 0/6] drm/msm: Decouple IFPC disable and sysprof
From: Akhil P Oommen
Date: Thu Nov 05 2026 - 16:28:10 EST
On 11/5/2026 10:11 PM, Rob Clark wrote:
> Convert IFPC-disable into it's own refcnt so that multiple threads can
> request IFPC to be disabled without stomping on each other.
>
> Extracted out of gen8 GPU state capture series[1], as other than fixing
> a missing IFPC disable in debugfs state capture path, it is unrelated.
>
> [1] https://patchwork.freedesktop.org/series/176505/
>
> v6:
> - Fix potential runpm ref leak in sel_worker()
> - Acquire gpu->lock before runpm
> - Fix unmatched OOB clear in a6xx_gmu_shutdown()
> - Link to v5: https://lore.kernel.org/all/20261104175931.28475-1-robin.clark@xxxxxxxxxxxxxxxx/
>
> v5:
> - Skip unneeded msm_context_set_sysprof() call in msm_postclose()
> - Fix potential sel_worker deadlock
> - Revert back to original gpu-lock/runpm ordering
> - Link to v4: https://lore.kernel.org/all/20261103231850.17493-1-robin.clark@xxxxxxxxxxxxxxxx/
>
> v4:
> - Don't clear GMU_STATUS_OOB_PERF_SET in suspend path. Restore it in
> hw_init()
> - Don't require gpu->lock in a6xx_gmu_ifpc_update(), but instead warn
> if needs_hw_init
> - Move perfcntr resume to after hw_init()
> - Link to v3: https://lore.kernel.org/all/20261103184713.29664-1-robin.clark@xxxxxxxxxxxxxxxx
>
> v3:
> - Rework IFPC disable harder to play nicer with hw_init(). If we
> need_hw_init, simply update gmu->status mask and let hw_init()
> restore the OOB request in a sequence that won't anger the fw.
> - Link to v2: https://lore.kernel.org/all/20261102190010.720443-1-robin.clark@xxxxxxxxxxxxxxxx/
>
> v2:
> - Fix double acquire of gmu->lock
> - Fix missing a8xx hw_init() path
> - Link to v1: https://lore.kernel.org/all/20261101174631.23637-1-robin.clark@xxxxxxxxxxxxxxxx/
>
>
> Rob Clark (6):
> drm/msm: Hold runpm ref in set_sysprof()
> drm/msm: Resume perfcntrs after hw_init
> drm/msm: Rework IFPC disable
> drm/msm: Add cleanup help for disabling IFPC
> drm/msm/debugfs: Use cleanup.h for gpu state dump
> drm/msm: Inhibit IFPC for state snapshot
>
> drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 27 +++++++----------
> drivers/gpu/drm/msm/adreno/a6xx_gpu.c | 9 +++---
> drivers/gpu/drm/msm/adreno/a6xx_gpu.h | 2 +-
> drivers/gpu/drm/msm/adreno/a8xx_gpu.c | 3 +-
> drivers/gpu/drm/msm/adreno/adreno_device.c | 5 +---
> drivers/gpu/drm/msm/adreno/adreno_gpu.c | 1 -
> drivers/gpu/drm/msm/msm_debugfs.c | 32 +++++++++-----------
> drivers/gpu/drm/msm/msm_drv.c | 2 +-
> drivers/gpu/drm/msm/msm_gpu.c | 5 +++-
> drivers/gpu/drm/msm/msm_gpu.h | 34 ++++++++++++++++++++--
> drivers/gpu/drm/msm/msm_perfcntr.c | 17 ++++++-----
> drivers/gpu/drm/msm/msm_submitqueue.c | 20 +++++++++----
> 12 files changed, 94 insertions(+), 63 deletions(-)
For the series:
Reviewed-by: Akhil P Oommen <akhilpo@xxxxxxxxxxxxxxxx>
-Akhil.>