[PATCH v4 0/5] drm/vkms: Switch all vkms object to DRM managed objects

From: Louis Chauvet
Date: Thu Oct 10 2024 - 13:39:21 EST


To simplify the memory managment this series replace all manual drm
object managment by drm-managed one. This way the VKMS code don't have to
manage it directly and the DRM core will handle the object destruction.

No functional changes are intended in this series. This series depends on
[2] (for some code cleanup, which conflict with this series).

PATCH 1/5: Migrate connector managment to drmm
PATCH 2/5: Migrate encoder managment to drmm
PATCH 3/5: Migrate connector management to drm
PATCH 4/5: Introduce drmm_writeback helpers
PATCH 5/5: Migrate writeback connector management to drm

[2]:https://lore.kernel.org/all/20241010-vkms-remove-index-v2-1-6b8d6cfd5a15@xxxxxxxxxxx/

For the drmm_writeback helpers, you can find some discussions here [3].

[3]:https://lore.kernel.org/all/20240906-writeback-drmm-v1-1-01ede328182c@xxxxxxxxxxx/

Signed-off-by: Louis Chauvet <louis.chauvet@xxxxxxxxxxx>
---
Changes in v4:
- No changes for the managed part
- Add the patch to introduce drmm_writeback helpers
- Link to v3: https://lore.kernel.org/r/20240912-google-vkms-managed-v3-0-7708d6ad262d@xxxxxxxxxxx

Changes in v3:
- As suggested by Maxime, split the managed and the dynamic allocation
parts in different series
- To reduce the diff in this series, extract the "remove crtc index" part,
see https://lore.kernel.org/all/20240906-vkms-remove-index-v1-1-3cfedd8ccb2f@xxxxxxxxxxx/
- Link to v2: https://lore.kernel.org/r/20240827-google-vkms-managed-v2-0-f41104553aeb@xxxxxxxxxxx

Changes in v2:
- Applied comments from José
- Extract the rename vkms_output -> vkms_crtc to avoid useless changes in
the last commit
- Extract the rename to_vkms_crtc_state to
drm_crtc_state_to_vkms_crtc_state to avoid useless changes in last
commit
- Extract the drm_mode_crtc_set_gamma_size result check in its own commit
- Rebased on drm-misc/drm-misc-next
- Link to v1: https://lore.kernel.org/r/20240814-google-vkms-managed-v1-0-7ab8b8921103@xxxxxxxxxxx

---
Louis Chauvet (5):
drm/vkms: Switch to managed for connector
drm/vkms: Switch to managed for encoder
drm/vkms: Switch to managed for crtc
drm: writeback: Introduce drm managed helpers
drm/vkms: Switch to managed for writeback connector

drivers/gpu/drm/drm_connector.c | 4 +
drivers/gpu/drm/drm_writeback.c | 224 +++++++++++++++++++++++++++++-----
drivers/gpu/drm/vkms/vkms_crtc.c | 14 +++
drivers/gpu/drm/vkms/vkms_drv.c | 9 --
drivers/gpu/drm/vkms/vkms_output.c | 31 ++---
drivers/gpu/drm/vkms/vkms_writeback.c | 13 +-
include/drm/drm_writeback.h | 10 ++
7 files changed, 238 insertions(+), 67 deletions(-)
---
base-commit: 33c255312660653cf54f8019896b5dca28e3c580
change-id: 20240521-google-vkms-managed-4aec99461a77
prerequisite-message-id: <20241010-vkms-remove-index-v2-1-6b8d6cfd5a15@xxxxxxxxxxx>
prerequisite-patch-id: 920c23497fc5bd2fdf1dded06ce198c227ea0ef9

Best regards,
--
Louis Chauvet <louis.chauvet@xxxxxxxxxxx>