All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH i-g-t v4 00/41] VKMS configfs tests
@ 2025-08-07  7:45 José Expósito
  2025-08-07  7:45 ` [PATCH i-g-t v4 01/41] lib/drmtest: Add VKMS as a known driver type José Expósito
                   ` (45 more replies)
  0 siblings, 46 replies; 58+ messages in thread
From: José Expósito @ 2025-08-07  7:45 UTC (permalink / raw)
  To: igt-dev
  Cc: louis.chauvet, zbigniew.kempczynski, kamil.konieczny, karthik.b.s,
	José Expósito

Hi everyone,

This series add tests for the VKMS + configfs work Louis Chauvet and I are doing
in the kernel.

This new functionality allows to configure one or more VKMS instances without
having to reload the driver using configfs.

For more details, have a look to the kernel patchset and the documentation in
"vkms.rst" (not merged yet). [1]

There was a previous attempt to implement this tests [2] and I kept copyright
were required.

Massive thank you to Louis Chauvet who is doing a fenomenal work reviewing this
(very long) series of patches.

Best wishes,
José Expósito

[1] https://lore.kernel.org/dri-devel/20250507135431.53907-1-jose.exposito89@gmail.com/
[2] https://lists.freedesktop.org/archives/igt-dev/2023-September/060717.html

Changes in v4:

  - Rebased on the latest master branch
  - Added reviewed-by tags (Louis)
  - Added missing "static" to some consts (Kamil)
  - Updated copyright year (Kamil)
  - Using #include <limits.h> instead of <linux/limits.h> (Kamil)
  - Sorted alphabetically includes (Kamil)
  - Dropped VKMS tests from the testplan (Kamil and Karthik)
  - Link to v3: https://lore.kernel.org/igt-dev/20250715102513.5636-1-jose.exposito89@gmail.com/

Changes in v3:

  - Rebased on the latest master branch
  - Link to v2: https://lore.kernel.org/igt-dev/20250313173318.5818-1-jose.exposito89@gmail.com/

Changes in v2:
  - Applied review comments by Louis Chauvet:
    - Added missing references to DRIVER_VKMS in drmtest.c
    - Loading vkms with drm_load_module(DRIVER_VKMS) in igt_fixture 
    - Documented igt_is_mountpoint()
    - Checked the return value of snprintf() and fprintf()
    - Removed unnecessary empty items ({ {} }) in items in igt_vkms_config_t
    - Added new tests testing the valid values for planes, CRTCs and connectors
    - Remove code duplication generating configfs paths by adding helpers
  - Using udev instead of drmGetDevices() to find VKMS devices in a new patch
    "lib/igt_device_scan: Allow to find device by name". This change is required
    to support the faux bus. See:
    https://lists.freedesktop.org/archives/igt-dev/2025-February/086510.html
  - Rebased on the latest "master"
  - Link to v1: https://lists.freedesktop.org/archives/igt-dev/2025-February/086071.html

José Expósito (41):
  lib/drmtest: Add VKMS as a known driver type
  lib/vkms: Add minimal VKMS library and test device default files
  lib/vkms: Allow to enable/disable VKMS devices
  tests/vkms_configfs: Test device invalid values
  lib/vkms: Test plane default files
  lib/vkms: Test plane default values
  lib/vkms: Test plane invalid values
  tests/vkms_configfs: Test plane valid values
  lib/vkms: Test CRTC default files
  lib/vkms: Test CRTC default values
  lib/vkms: Test CRTC invalid values
  tests/vkms_configfs: Test CRTC valid values
  lib/vkms: Test encoder default files
  lib/vkms: Test connector default files
  lib/vkms: Test connector default values
  lib/vkms: Test connector invalid values
  tests/vkms_configfs: Test connector valid values
  lib/vkms: Test attaching planes to CRTCs
  lib/vkms: Test attaching encoders to CRTCs
  lib/vkms: Test attaching connectors to encoders
  lib/igt_device_scan: Allow to find device by sysname
  tests/vkms_configfs: Test enablement without pipeline items
  lib/vkms: Create VKMS device from static config
  tests/vkms_configfs: Test adding too many planes
  tests/vkms_configfs: Test not adding a primary plane
  tests/vkms_configfs: Test adding multiple primary planes
  tests/vkms_configfs: Test adding multiple cursor planes
  tests/vkms_configfs: Test adding a plane without possible CRTCs
  tests/vkms_configfs: Test enabling a device without CRTCs
  tests/vkms_configfs: Test enabling a device with too many CRTCs
  tests/vkms_configfs: Test enabling a device without encoders
  tests/vkms_configfs: Test enabling a device with too many encoders
  tests/vkms_configfs: Test adding an encoder without possible CRTCs
  tests/vkms_configfs: Test adding a CRTC without encoders
  tests/vkms_configfs: Test enabling a device without connectors
  tests/vkms_configfs: Test enabling a device with too many connectors
  lib/vkms: Test changing enabled device planes
  lib/vkms: Test changing enabled device CRTCs
  lib/vkms: Test changing enabled device encoders
  lib/vkms: Test changing enabled device connectors
  tests/vkms_configfs: Test connector hot-plug

 lib/drmtest.c              |   21 +
 lib/drmtest.h              |    6 +-
 lib/igt_device_scan.c      |   22 +
 lib/igt_device_scan.h      |    2 +
 lib/igt_vkms.c             | 1003 ++++++++++++++++++
 lib/igt_vkms.h             |  132 +++
 lib/meson.build            |    1 +
 meson.build                |    8 +
 tests/meson.build          |    2 +
 tests/vkms/meson.build     |   13 +
 tests/vkms/vkms_configfs.c | 1962 ++++++++++++++++++++++++++++++++++++
 11 files changed, 3171 insertions(+), 1 deletion(-)
 create mode 100644 lib/igt_vkms.c
 create mode 100644 lib/igt_vkms.h
 create mode 100644 tests/vkms/meson.build
 create mode 100644 tests/vkms/vkms_configfs.c


base-commit: dfce662f38d1e272363d37a9cfbcbfee379fa851
-- 
2.50.1


^ permalink raw reply	[flat|nested] 58+ messages in thread

end of thread, other threads:[~2025-09-08 11:30 UTC | newest]

Thread overview: 58+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-07  7:45 [PATCH i-g-t v4 00/41] VKMS configfs tests José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 01/41] lib/drmtest: Add VKMS as a known driver type José Expósito
2025-08-12 15:33   ` Kamil Konieczny
2025-09-05 20:48   ` Louis Chauvet
2025-08-07  7:45 ` [PATCH i-g-t v4 02/41] lib/vkms: Add minimal VKMS library and test device default files José Expósito
2025-08-13 13:28   ` Kamil Konieczny
2025-08-14 10:52     ` José Expósito
2025-08-28 10:49       ` Kamil Konieczny
2025-09-05 20:49   ` Louis Chauvet
2025-09-08 11:30   ` Kamil Konieczny
2025-08-07  7:45 ` [PATCH i-g-t v4 03/41] lib/vkms: Allow to enable/disable VKMS devices José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 04/41] tests/vkms_configfs: Test device invalid values José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 05/41] lib/vkms: Test plane default files José Expósito
2025-08-13 13:38   ` Kamil Konieczny
2025-09-05 20:51   ` Louis Chauvet
2025-08-07  7:45 ` [PATCH i-g-t v4 06/41] lib/vkms: Test plane default values José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 07/41] lib/vkms: Test plane invalid values José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 08/41] tests/vkms_configfs: Test plane valid values José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 09/41] lib/vkms: Test CRTC default files José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 10/41] lib/vkms: Test CRTC default values José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 11/41] lib/vkms: Test CRTC invalid values José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 12/41] tests/vkms_configfs: Test CRTC valid values José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 13/41] lib/vkms: Test encoder default files José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 14/41] lib/vkms: Test connector " José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 15/41] lib/vkms: Test connector default values José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 16/41] lib/vkms: Test connector invalid values José Expósito
2025-08-28 10:48   ` Kamil Konieczny
2025-09-05 20:53   ` Louis Chauvet
2025-08-07  7:45 ` [PATCH i-g-t v4 17/41] tests/vkms_configfs: Test connector valid values José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 18/41] lib/vkms: Test attaching planes to CRTCs José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 19/41] lib/vkms: Test attaching encoders " José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 20/41] lib/vkms: Test attaching connectors to encoders José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 21/41] lib/igt_device_scan: Allow to find device by sysname José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 22/41] tests/vkms_configfs: Test enablement without pipeline items José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 23/41] lib/vkms: Create VKMS device from static config José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 24/41] tests/vkms_configfs: Test adding too many planes José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 25/41] tests/vkms_configfs: Test not adding a primary plane José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 26/41] tests/vkms_configfs: Test adding multiple primary planes José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 27/41] tests/vkms_configfs: Test adding multiple cursor planes José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 28/41] tests/vkms_configfs: Test adding a plane without possible CRTCs José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 29/41] tests/vkms_configfs: Test enabling a device without CRTCs José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 30/41] tests/vkms_configfs: Test enabling a device with too many CRTCs José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 31/41] tests/vkms_configfs: Test enabling a device without encoders José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 32/41] tests/vkms_configfs: Test enabling a device with too many encoders José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 33/41] tests/vkms_configfs: Test adding an encoder without possible CRTCs José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 34/41] tests/vkms_configfs: Test adding a CRTC without encoders José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 35/41] tests/vkms_configfs: Test enabling a device without connectors José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 36/41] tests/vkms_configfs: Test enabling a device with too many connectors José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 37/41] lib/vkms: Test changing enabled device planes José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 38/41] lib/vkms: Test changing enabled device CRTCs José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 39/41] lib/vkms: Test changing enabled device encoders José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 40/41] lib/vkms: Test changing enabled device connectors José Expósito
2025-08-07  7:45 ` [PATCH i-g-t v4 41/41] tests/vkms_configfs: Test connector hot-plug José Expósito
2025-08-07  9:02 ` ✓ i915.CI.BAT: success for VKMS configfs tests (rev7) Patchwork
2025-08-07  9:16 ` ✓ Xe.CI.BAT: " Patchwork
2025-08-07 10:16 ` ✗ Xe.CI.Full: failure " Patchwork
2025-08-07 11:08 ` ✗ i915.CI.Full: " Patchwork
2025-09-05 20:55 ` [PATCH i-g-t v4 00/41] VKMS configfs tests Louis Chauvet

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.