[PATCH i-g-t 00/39] VKMS configfs tests

Louis Chauvet louis.chauvet at bootlin.com
Thu Feb 27 13:11:51 UTC 2025



Le 18/02/2025 à 17:49, José Expósito a écrit :
> 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).
> 
> There was a previous attempt to implement this tests [1] and I kept copyright
> were required.
> 
> Best wishes,
> José Expósito
> 

Hi José,

Thanks a lot for this series, it will be very useful to ensure that the 
UAPI of vkms does not change.

I really like that you tested both "stuff that should work" (create a 
device, planes...) and "stuff that should not work" (can't change the 
status of planes...)

Unfortunatly, the last tests, maybe it is an issue on my side. Can you 
share a git repo that contains a kernel that pass the tests on your machine?

Thanks,
Louis Chauvet


> [1] https://lists.freedesktop.org/archives/igt-dev/2023-September/060717.html
> 
> José Expósito (39):
>    lib/drmtest: Add VKMS as a known driver type
>    lib/igt_debugfs: Move is_mountpoint() to igt_aux
>    lib/igt_configfs: Add helper to mount configfs
>    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
>    lib/vkms: Test CRTC default files
>    lib/vkms: Test CRTC default values
>    lib/vkms: Test CRTC invalid values
>    lib/vkms: Test encoder default files
>    lib/vkms: Test connector default files
>    lib/vkms: Test connector default values
>    lib/vkms: Test plane connector invalid values
>    lib/vkms: Test attaching planes to CRTCs
>    lib/vkms: Test attaching encoders to CRTCs
>    lib/vkms: Test attaching connectors to encoders
>    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
> 
>   docs/testplan/meson.build        |    7 +-
>   lib/drmtest.c                    |   18 +
>   lib/drmtest.h                    |    8 +-
>   lib/igt.h                        |    1 +
>   lib/igt_aux.c                    |   25 +
>   lib/igt_aux.h                    |    2 +
>   lib/igt_configfs.c               |   57 +
>   lib/igt_configfs.h               |   13 +
>   lib/igt_debugfs.c                |   29 +-
>   lib/igt_vkms.c                   |  794 +++++++++++++
>   lib/igt_vkms.h                   |  109 ++
>   lib/meson.build                  |    2 +
>   meson.build                      |    8 +
>   tests/meson.build                |    2 +
>   tests/vkms/meson.build           |   13 +
>   tests/vkms/vkms_configfs.c       | 1884 ++++++++++++++++++++++++++++++
>   tests/vkms/vkms_test_config.json |   72 ++
>   17 files changed, 3013 insertions(+), 31 deletions(-)
>   create mode 100644 lib/igt_configfs.c
>   create mode 100644 lib/igt_configfs.h
>   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
>   create mode 100644 tests/vkms/vkms_test_config.json
> 

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




More information about the igt-dev mailing list