[Nouveau] [PATCH v2 00/15] Runtime pm ref leak bonanza
Daniel Vetter
daniel at ffwll.ch
Thu Jun 9 06:50:32 UTC 2016
On Wed, Jun 08, 2016 at 06:47:27PM +0200, Lukas Wunner wrote:
> Second iteration of my endeavour to rid nouveau, radeon and amdgpu of
> runtime pm ref leaks.
>
> Patches 1 to 8 are identical to v1.
>
> Patch 9 of v1 modified the DRM core to turn off all CRTCs on driver
> unload. Based on feedback by Daniel Vetter, I've replaced this with
> a helper to turn off all CRTCs, which is called by nouveau, radeon
> and amdgpu on unload. In other words, this is now opt-in.
> So patch 9 of v1 is replaced with new patches 9 to 12.
>
> A by-product of patch 9 is a helper which turns off a *single* CRTC.
> This is open coded in three other places in the DRM tree and patches
> 13 to 15 refactor those to use the new helper.
Yeah I think this makes much more sense. Please poke amd/nouveau folks for
reviews/acks, then I can merge.
-Daniel
>
> To ease reviewing, I've pushed this series to GitHub:
> https://github.com/l1k/linux/commits/drm_runpm_fixes_v2
>
> The discussion on v1 is archived here:
> https://lists.freedesktop.org/archives/dri-devel/2016-May/thread.html#108278
>
> Thanks,
>
> Lukas
>
> Lukas Wunner (15):
> drm/nouveau: Don't leak runtime pm ref on driver unload
> drm/nouveau: Forbid runtime pm on driver unload
> drm/radeon: Don't leak runtime pm ref on driver unload
> drm/radeon: Don't leak runtime pm ref on driver load
> drm/radeon: Forbid runtime pm on driver unload
> drm/amdgpu: Don't leak runtime pm ref on driver unload
> drm/amdgpu: Don't leak runtime pm ref on driver load
> drm/amdgpu: Forbid runtime pm on driver unload
> drm: Add helpers to turn off CRTCs
> drm/nouveau: Turn off CRTCs on driver unload
> drm/radeon: Turn off CRTCs on driver unload
> drm/amdgpu: Turn off CRTCs on driver unload
> drm: Use helper to turn off CRTC
> drm/i2c/ch7006: Use helper to turn off CRTC
> drm/nouveau/dispnv04: Use helper to turn off CRTC
>
> drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 1 +
> drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 12 +++++--
> drivers/gpu/drm/drm_crtc.c | 53 ++++++++++++++++++++++++++----
> drivers/gpu/drm/i2c/ch7006_drv.c | 9 ++---
> drivers/gpu/drm/nouveau/dispnv04/disp.c | 10 ------
> drivers/gpu/drm/nouveau/dispnv04/tvnv17.c | 9 ++---
> drivers/gpu/drm/nouveau/nouveau_display.c | 1 +
> drivers/gpu/drm/nouveau/nouveau_drm.c | 6 +++-
> drivers/gpu/drm/radeon/radeon_device.c | 4 +++
> drivers/gpu/drm/radeon/radeon_display.c | 1 +
> drivers/gpu/drm/radeon/radeon_kms.c | 5 ++-
> include/drm/drm_crtc.h | 2 ++
> 12 files changed, 77 insertions(+), 36 deletions(-)
>
> --
> 2.8.1
>
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
More information about the Nouveau
mailing list