Hi everyone,

I have reviewed all the series, but I would appreciate an additional review for two important reasons: - This series introduces a new uAPI, and I believe it is crucial to have at least a third perspective before merging. - I was heavily involved in the creation of these patches, so an external review would be very valuable.

Could someone please look at it so we can move forward? We have many new parameters to introduce, such as plane configuration and dynamic connectors, but everything depends on this series.

Thank you very much for your help!

Best regards,
Louis Chauvet


Le 07/05/2025 à 15:54, José Expósito a écrit :
Hi everyone,

This series allow to configure one or more VKMS instances without having
to reload the driver using configfs.

The series is structured in 3 blocks:

   - Patches 1..11: Basic device configuration. For simplicity, I kept the
     available options as minimal as possible.

   - Patches 12 and 13: New option to skip the default device creation and to-do
     cleanup.

   - Patches 14, 15 and 16: Allow to hot-plug and unplug connectors. This is not
     part of the minimal set of options, but I included in this series so it can
     be used as a template/example of how new configurations can be added.

The process of configuring a VKMS device is documented in "vkms.rst".

Finally, the code is thoroughly tested by a collection of IGT tests [1].

Best wishes,
José Expósito

[1] https://lists.freedesktop.org/archives/igt-dev/2025-February/086071.html

Changes in v5:

   - Added Reviewed-by tags, thanks Louis!
   - Rebased on top of drm-misc-next
   - Link to v4: 
https://lore.kernel.org/dri-devel/20250407081425.6420-1-jose.exposit...@gmail.com/

Changes in v4:

   - Since Louis and I worked on this together, set him as the author of some of
     the patches and me as co-developed-by to reflect this joint effort.
   - Rebased on top of drm-misc-next
   - Link to v3: 
https://lore.kernel.org/all/20250307163353.5896-1-jose.exposit...@gmail.com/

Changes in v3:

   - Applied review comments by Louis Chauvet: (thanks!!)
     - Use scoped_guard() instead of guard(mutex)(...)
     - Fix a use-after-free error in the connector hot-plug code
   - Rebased on top of drm-misc-next
   - Link to v2: 
https://lore.kernel.org/all/20250225175936.7223-1-jose.exposit...@gmail.com/

Changes in v2:

   - Applied review comments by Louis Chauvet:
     - Use guard(mutex)(...) instead of lock/unlock
     - Return -EBUSY when trying to modify a enabled device
     - Move the connector hot-plug related patches to the end
   - Rebased on top of drm-misc-next
   - Link to v1: 
https://lore.kernel.org/dri-devel/20250218170808.9507-1-jose.exposit...@gmail.com/T/

José Expósito (6):
   drm/vkms: Expose device creation and destruction
   drm/vkms: Allow to configure the default device creation
   drm/vkms: Remove completed task from the TODO list
   drm/vkms: Allow to configure connector status
   drm/vkms: Allow to update the connector status
   drm/vkms: Allow to configure connector status via configfs

Louis Chauvet (10):
   drm/vkms: Add and remove VKMS instances via configfs
   drm/vkms: Allow to configure multiple planes via configfs
   drm/vkms: Allow to configure the plane type via configfs
   drm/vkms: Allow to configure multiple CRTCs via configfs
   drm/vkms: Allow to configure CRTC writeback support via configfs
   drm/vkms: Allow to attach planes and CRTCs via configfs
   drm/vkms: Allow to configure multiple encoders via configfs
   drm/vkms: Allow to attach encoders and CRTCs via configfs
   drm/vkms: Allow to configure multiple connectors via configfs
   drm/vkms: Allow to attach connectors and encoders via configfs

  Documentation/gpu/vkms.rst                    | 100 ++-
  drivers/gpu/drm/vkms/Kconfig                  |   1 +
  drivers/gpu/drm/vkms/Makefile                 |   3 +-
  drivers/gpu/drm/vkms/tests/vkms_config_test.c |  24 +
  drivers/gpu/drm/vkms/vkms_config.c            |   8 +-
  drivers/gpu/drm/vkms/vkms_config.h            |  26 +
  drivers/gpu/drm/vkms/vkms_configfs.c          | 833 ++++++++++++++++++
  drivers/gpu/drm/vkms/vkms_configfs.h          |   8 +
  drivers/gpu/drm/vkms/vkms_connector.c         |  35 +
  drivers/gpu/drm/vkms/vkms_connector.h         |   9 +
  drivers/gpu/drm/vkms/vkms_drv.c               |  18 +-
  drivers/gpu/drm/vkms/vkms_drv.h               |  20 +
  12 files changed, 1072 insertions(+), 13 deletions(-)
  create mode 100644 drivers/gpu/drm/vkms/vkms_configfs.c
  create mode 100644 drivers/gpu/drm/vkms/vkms_configfs.h


base-commit: a6c0a91ccb257eaec2aee080df06863ce7601315

--
Louis Chauvet, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

Reply via email to