[v2,2/2] drm/ci: add tests on vkms
Commit Message
Add job that runs igt on top of vkms.
Signed-off-by: Helen Koike <helen.koike@collabora.com>
---
See pipeline: https://gitlab.freedesktop.org/helen.fornazier/linux/-/pipelines/990494
v2:
- do not mv modules to /lib/modules in the job definition, leave it to
crosvm-runner.sh
---
MAINTAINERS | 1 +
drivers/gpu/drm/ci/build.sh | 1 -
drivers/gpu/drm/ci/gitlab-ci.yml | 1 +
drivers/gpu/drm/ci/igt_runner.sh | 6 ++--
drivers/gpu/drm/ci/image-tags.yml | 2 +-
drivers/gpu/drm/ci/test.yml | 23 ++++++++++++++-
drivers/gpu/drm/ci/x86_64.config | 1 +
.../drm/ci/xfails/virtio_gpu-none-flakes.txt | 0
drivers/gpu/drm/ci/xfails/vkms-none-fails.txt | 29 +++++++++++++++++++
drivers/gpu/drm/ci/xfails/vkms-none-skips.txt | 10 +++++++
10 files changed, 68 insertions(+), 6 deletions(-)
delete mode 100644 drivers/gpu/drm/ci/xfails/virtio_gpu-none-flakes.txt
create mode 100644 drivers/gpu/drm/ci/xfails/vkms-none-fails.txt
create mode 100644 drivers/gpu/drm/ci/xfails/vkms-none-skips.txt
Comments
On Fri, 22 Sep 2023 14:12:37 -0300, Helen Koike wrote:
> Add job that runs igt on top of vkms.
>
> Signed-off-by: Helen Koike <helen.koike@collabora.com>
>
Acked-by: Maxime Ripard <mripard@kernel.org>
Thanks!
Maxime
On 9/22/2023 10:12 AM, Helen Koike wrote:
> Add job that runs igt on top of vkms.
>
> Signed-off-by: Helen Koike <helen.koike@collabora.com>
Tested-by: Jessica Zhang <quic_jesszhan@quicinc.com>
Acked-by: Jessica Zhang <quic_jesszhan@quicinc.com>
>
> ---
>
> See pipeline: https://gitlab.freedesktop.org/helen.fornazier/linux/-/pipelines/990494
>
> v2:
> - do not mv modules to /lib/modules in the job definition, leave it to
> crosvm-runner.sh
> ---
> MAINTAINERS | 1 +
> drivers/gpu/drm/ci/build.sh | 1 -
> drivers/gpu/drm/ci/gitlab-ci.yml | 1 +
> drivers/gpu/drm/ci/igt_runner.sh | 6 ++--
> drivers/gpu/drm/ci/image-tags.yml | 2 +-
> drivers/gpu/drm/ci/test.yml | 23 ++++++++++++++-
> drivers/gpu/drm/ci/x86_64.config | 1 +
> .../drm/ci/xfails/virtio_gpu-none-flakes.txt | 0
> drivers/gpu/drm/ci/xfails/vkms-none-fails.txt | 29 +++++++++++++++++++
> drivers/gpu/drm/ci/xfails/vkms-none-skips.txt | 10 +++++++
> 10 files changed, 68 insertions(+), 6 deletions(-)
> delete mode 100644 drivers/gpu/drm/ci/xfails/virtio_gpu-none-flakes.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/vkms-none-fails.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/vkms-none-skips.txt
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index 740a2ce2689c..e47dbe31d221 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -6813,6 +6813,7 @@ L: dri-devel@lists.freedesktop.org
> S: Maintained
> T: git git://anongit.freedesktop.org/drm/drm-misc
> F: Documentation/gpu/vkms.rst
> +F: drivers/gpu/drm/ci/xfails/vkms*
> F: drivers/gpu/drm/vkms/
>
> DRM DRIVER FOR VIRTUALBOX VIRTUAL GPU
> diff --git a/drivers/gpu/drm/ci/build.sh b/drivers/gpu/drm/ci/build.sh
> index 7b014287a041..9e510e77098b 100644
> --- a/drivers/gpu/drm/ci/build.sh
> +++ b/drivers/gpu/drm/ci/build.sh
> @@ -146,7 +146,6 @@ fi
>
> mkdir -p artifacts/install/lib
> mv install/* artifacts/install/.
> -rm -rf artifacts/install/modules
> ln -s common artifacts/install/ci-common
>
> for image in ${KERNEL_IMAGE_NAME}; do
> diff --git a/drivers/gpu/drm/ci/gitlab-ci.yml b/drivers/gpu/drm/ci/gitlab-ci.yml
> index 522f83db1a07..c86ee5a51012 100644
> --- a/drivers/gpu/drm/ci/gitlab-ci.yml
> +++ b/drivers/gpu/drm/ci/gitlab-ci.yml
> @@ -120,6 +120,7 @@ stages:
> - rockchip
> - virtio-gpu
> - lint
> + - software-driver
>
> # YAML anchors for rule conditions
> # --------------------------------
> diff --git a/drivers/gpu/drm/ci/igt_runner.sh b/drivers/gpu/drm/ci/igt_runner.sh
> index 2bb759165063..c7f83d1b72e9 100755
> --- a/drivers/gpu/drm/ci/igt_runner.sh
> +++ b/drivers/gpu/drm/ci/igt_runner.sh
> @@ -21,9 +21,9 @@ cat /sys/kernel/debug/dri/*/state
> set -e
>
> # Cannot use HWCI_KERNEL_MODULES as at that point we don't have the module in /lib
> -if [ "$IGT_FORCE_DRIVER" = "amdgpu" ]; then
> - mv /install/modules/lib/modules/* /lib/modules/.
> - modprobe amdgpu
> +if [ "$IGT_FORCE_DRIVER" = "amdgpu" || "$IGT_FORCE_DRIVER" = "vkms" ]; then
> + mv /install/modules/lib/modules/* /lib/modules/. || true
> + modprobe --first-time "$IGT_FORCE_DRIVER"
> fi
>
> if [ -e "/install/xfails/$DRIVER_NAME-$GPU_VERSION-skips.txt" ]; then
> diff --git a/drivers/gpu/drm/ci/image-tags.yml b/drivers/gpu/drm/ci/image-tags.yml
> index f051b6c547c5..e05077ee29d2 100644
> --- a/drivers/gpu/drm/ci/image-tags.yml
> +++ b/drivers/gpu/drm/ci/image-tags.yml
> @@ -4,7 +4,7 @@ variables:
> DEBIAN_BASE_TAG: "${CONTAINER_TAG}"
>
> DEBIAN_X86_64_BUILD_IMAGE_PATH: "debian/x86_64_build"
> - DEBIAN_BUILD_TAG: "${CONTAINER_TAG}"
> + DEBIAN_BUILD_TAG: "2023-09-20-vkms-module-2"
>
> KERNEL_ROOTFS_TAG: "${CONTAINER_TAG}"
>
> diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
> index 6473cddaa7a9..69a5337fd989 100644
> --- a/drivers/gpu/drm/ci/test.yml
> +++ b/drivers/gpu/drm/ci/test.yml
> @@ -332,4 +332,25 @@ virtio_gpu:none:
> - igt:x86_64
> rules:
> # TODO: current issue: malloc(): corrupted top size. Fix and remove this rule.
> - - when: never
> \ No newline at end of file
> + - when: never
> +
> +vkms:none:
> + stage: software-driver
> + variables:
> + DRIVER_NAME: vkms
> + GPU_VERSION: none
> + extends:
> + - .test-gl
> + tags:
> + - kvm
> + script:
> + - ln -sf $CI_PROJECT_DIR/install /install
> + - mv install/bzImage /lava-files/bzImage
> + - mkdir -p /lib/modules
> + - mkdir -p $CI_PROJECT_DIR/results
> + - ln -sf $CI_PROJECT_DIR/results /results
> + - ./install/crosvm-runner.sh ./install/igt_runner.sh
> + needs:
> + - debian/x86_64_test-gl
> + - testing:x86_64
> + - igt:x86_64
> \ No newline at end of file
> diff --git a/drivers/gpu/drm/ci/x86_64.config b/drivers/gpu/drm/ci/x86_64.config
> index 1cbd49a5b23a..8eaba388b141 100644
> --- a/drivers/gpu/drm/ci/x86_64.config
> +++ b/drivers/gpu/drm/ci/x86_64.config
> @@ -24,6 +24,7 @@ CONFIG_DRM=y
> CONFIG_DRM_PANEL_SIMPLE=y
> CONFIG_PWM_CROS_EC=y
> CONFIG_BACKLIGHT_PWM=y
> +CONFIG_DRM_VKMS=m
>
> # Strip out some stuff we don't need for graphics testing, to reduce
> # the build.
> diff --git a/drivers/gpu/drm/ci/xfails/virtio_gpu-none-flakes.txt b/drivers/gpu/drm/ci/xfails/virtio_gpu-none-flakes.txt
> deleted file mode 100644
> index e69de29bb2d1..000000000000
> diff --git a/drivers/gpu/drm/ci/xfails/vkms-none-fails.txt b/drivers/gpu/drm/ci/xfails/vkms-none-fails.txt
> new file mode 100644
> index 000000000000..a65196a19222
> --- /dev/null
> +++ b/drivers/gpu/drm/ci/xfails/vkms-none-fails.txt
> @@ -0,0 +1,29 @@
> +kms_cursor_crc@cursor-rapid-movement-128x128,Fail
> +kms_cursor_crc@cursor-rapid-movement-128x42,Fail
> +kms_cursor_crc@cursor-rapid-movement-256x256,Fail
> +kms_cursor_crc@cursor-rapid-movement-256x85,Fail
> +kms_cursor_crc@cursor-rapid-movement-32x10,Fail
> +kms_cursor_crc@cursor-rapid-movement-32x32,Fail
> +kms_cursor_crc@cursor-rapid-movement-512x170,Fail
> +kms_cursor_crc@cursor-rapid-movement-512x512,Fail
> +kms_cursor_crc@cursor-rapid-movement-64x21,Fail
> +kms_cursor_crc@cursor-rapid-movement-64x64,Fail
> +kms_cursor_legacy@basic-flip-before-cursor-atomic,Fail
> +kms_cursor_legacy@basic-flip-before-cursor-legacy,Fail
> +kms_cursor_legacy@cursor-vs-flip-atomic,Fail
> +kms_cursor_legacy@cursor-vs-flip-legacy,Fail
> +kms_cursor_legacy@cursor-vs-flip-toggle,Fail
> +kms_cursor_legacy@cursor-vs-flip-varying-size,Fail
> +kms_cursor_legacy@cursorA-vs-flipA-toggle,Fail
> +kms_cursor_legacy@flip-vs-cursor-atomic,Fail
> +kms_cursor_legacy@flip-vs-cursor-crc-atomic,Fail
> +kms_cursor_legacy@flip-vs-cursor-crc-legacy,Fail
> +kms_cursor_legacy@flip-vs-cursor-legacy,Fail
> +kms_flip@flip-vs-expired-vblank-interruptible,Fail
> +kms_flip@plain-flip-fb-recreate,Fail
> +kms_pipe_crc_basic@nonblocking-crc,Fail
> +kms_pipe_crc_basic@nonblocking-crc-frame-sequence,Fail
> +kms_pipe_crc_basic@suspend-read-crc,Fail
> +kms_plane@plane-panning-bottom-right-suspend,Fail
> +kms_universal_plane@universal-plane-pipe-A-sanity,Fail
> +kms_vblank@pipe-A-ts-continuation-dpms-suspend,Fail
> \ No newline at end of file
> diff --git a/drivers/gpu/drm/ci/xfails/vkms-none-skips.txt b/drivers/gpu/drm/ci/xfails/vkms-none-skips.txt
> new file mode 100644
> index 000000000000..07aa62cff108
> --- /dev/null
> +++ b/drivers/gpu/drm/ci/xfails/vkms-none-skips.txt
> @@ -0,0 +1,10 @@
> +# Hits:
> +# rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
> +# rcu: Tasks blocked on level-0 rcu_node (CPUs 0-1): P749/1:b..l
> +kms_prop_blob@invalid-get-prop
> +
> +# keeps printing vkms_vblank_simulate: vblank timer overrun and never ends
> +kms_invalid_mode@int-max-clock
> +
> +# Suspend seems to be broken
> +.*suspend.*
> \ No newline at end of file
> --
> 2.34.1
>
On 27/09/2023 17:52, Jessica Zhang wrote:
>
>
> On 9/22/2023 10:12 AM, Helen Koike wrote:
>> Add job that runs igt on top of vkms.
>>
>> Signed-off-by: Helen Koike <helen.koike@collabora.com>
>
> Tested-by: Jessica Zhang <quic_jesszhan@quicinc.com>
> Acked-by: Jessica Zhang <quic_jesszhan@quicinc.com>
Thanks for the tests and reviews.
For some reason this is broken with the latest kernel, there is a memory
issue with crosvm which is under investigation, so, maintainers, please
do not pick this patch for now.
Thanks
Helen
>
>>
>> ---
>>
>> See pipeline:
>> https://gitlab.freedesktop.org/helen.fornazier/linux/-/pipelines/990494
>>
>> v2:
>> - do not mv modules to /lib/modules in the job definition, leave it to
>> crosvm-runner.sh
>> ---
>> MAINTAINERS | 1 +
>> drivers/gpu/drm/ci/build.sh | 1 -
>> drivers/gpu/drm/ci/gitlab-ci.yml | 1 +
>> drivers/gpu/drm/ci/igt_runner.sh | 6 ++--
>> drivers/gpu/drm/ci/image-tags.yml | 2 +-
>> drivers/gpu/drm/ci/test.yml | 23 ++++++++++++++-
>> drivers/gpu/drm/ci/x86_64.config | 1 +
>> .../drm/ci/xfails/virtio_gpu-none-flakes.txt | 0
>> drivers/gpu/drm/ci/xfails/vkms-none-fails.txt | 29 +++++++++++++++++++
>> drivers/gpu/drm/ci/xfails/vkms-none-skips.txt | 10 +++++++
>> 10 files changed, 68 insertions(+), 6 deletions(-)
>> delete mode 100644 drivers/gpu/drm/ci/xfails/virtio_gpu-none-flakes.txt
>> create mode 100644 drivers/gpu/drm/ci/xfails/vkms-none-fails.txt
>> create mode 100644 drivers/gpu/drm/ci/xfails/vkms-none-skips.txt
>>
>> diff --git a/MAINTAINERS b/MAINTAINERS
>> index 740a2ce2689c..e47dbe31d221 100644
>> --- a/MAINTAINERS
>> +++ b/MAINTAINERS
>> @@ -6813,6 +6813,7 @@ L: dri-devel@lists.freedesktop.org
>> S: Maintained
>> T: git git://anongit.freedesktop.org/drm/drm-misc
>> F: Documentation/gpu/vkms.rst
>> +F: drivers/gpu/drm/ci/xfails/vkms*
>> F: drivers/gpu/drm/vkms/
>> DRM DRIVER FOR VIRTUALBOX VIRTUAL GPU
>> diff --git a/drivers/gpu/drm/ci/build.sh b/drivers/gpu/drm/ci/build.sh
>> index 7b014287a041..9e510e77098b 100644
>> --- a/drivers/gpu/drm/ci/build.sh
>> +++ b/drivers/gpu/drm/ci/build.sh
>> @@ -146,7 +146,6 @@ fi
>> mkdir -p artifacts/install/lib
>> mv install/* artifacts/install/.
>> -rm -rf artifacts/install/modules
>> ln -s common artifacts/install/ci-common
>> for image in ${KERNEL_IMAGE_NAME}; do
>> diff --git a/drivers/gpu/drm/ci/gitlab-ci.yml
>> b/drivers/gpu/drm/ci/gitlab-ci.yml
>> index 522f83db1a07..c86ee5a51012 100644
>> --- a/drivers/gpu/drm/ci/gitlab-ci.yml
>> +++ b/drivers/gpu/drm/ci/gitlab-ci.yml
>> @@ -120,6 +120,7 @@ stages:
>> - rockchip
>> - virtio-gpu
>> - lint
>> + - software-driver
>> # YAML anchors for rule conditions
>> # --------------------------------
>> diff --git a/drivers/gpu/drm/ci/igt_runner.sh
>> b/drivers/gpu/drm/ci/igt_runner.sh
>> index 2bb759165063..c7f83d1b72e9 100755
>> --- a/drivers/gpu/drm/ci/igt_runner.sh
>> +++ b/drivers/gpu/drm/ci/igt_runner.sh
>> @@ -21,9 +21,9 @@ cat /sys/kernel/debug/dri/*/state
>> set -e
>> # Cannot use HWCI_KERNEL_MODULES as at that point we don't have the
>> module in /lib
>> -if [ "$IGT_FORCE_DRIVER" = "amdgpu" ]; then
>> - mv /install/modules/lib/modules/* /lib/modules/.
>> - modprobe amdgpu
>> +if [ "$IGT_FORCE_DRIVER" = "amdgpu" || "$IGT_FORCE_DRIVER" = "vkms"
>> ]; then
>> + mv /install/modules/lib/modules/* /lib/modules/. || true
>> + modprobe --first-time "$IGT_FORCE_DRIVER"
>> fi
>> if [ -e "/install/xfails/$DRIVER_NAME-$GPU_VERSION-skips.txt" ]; then
>> diff --git a/drivers/gpu/drm/ci/image-tags.yml
>> b/drivers/gpu/drm/ci/image-tags.yml
>> index f051b6c547c5..e05077ee29d2 100644
>> --- a/drivers/gpu/drm/ci/image-tags.yml
>> +++ b/drivers/gpu/drm/ci/image-tags.yml
>> @@ -4,7 +4,7 @@ variables:
>> DEBIAN_BASE_TAG: "${CONTAINER_TAG}"
>> DEBIAN_X86_64_BUILD_IMAGE_PATH: "debian/x86_64_build"
>> - DEBIAN_BUILD_TAG: "${CONTAINER_TAG}"
>> + DEBIAN_BUILD_TAG: "2023-09-20-vkms-module-2"
>> KERNEL_ROOTFS_TAG: "${CONTAINER_TAG}"
>> diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
>> index 6473cddaa7a9..69a5337fd989 100644
>> --- a/drivers/gpu/drm/ci/test.yml
>> +++ b/drivers/gpu/drm/ci/test.yml
>> @@ -332,4 +332,25 @@ virtio_gpu:none:
>> - igt:x86_64
>> rules:
>> # TODO: current issue: malloc(): corrupted top size. Fix and
>> remove this rule.
>> - - when: never
>> \ No newline at end of file
>> + - when: never
>> +
>> +vkms:none:
>> + stage: software-driver
>> + variables:
>> + DRIVER_NAME: vkms
>> + GPU_VERSION: none
>> + extends:
>> + - .test-gl
>> + tags:
>> + - kvm
>> + script:
>> + - ln -sf $CI_PROJECT_DIR/install /install
>> + - mv install/bzImage /lava-files/bzImage
>> + - mkdir -p /lib/modules
>> + - mkdir -p $CI_PROJECT_DIR/results
>> + - ln -sf $CI_PROJECT_DIR/results /results
>> + - ./install/crosvm-runner.sh ./install/igt_runner.sh
>> + needs:
>> + - debian/x86_64_test-gl
>> + - testing:x86_64
>> + - igt:x86_64
>> \ No newline at end of file
>> diff --git a/drivers/gpu/drm/ci/x86_64.config
>> b/drivers/gpu/drm/ci/x86_64.config
>> index 1cbd49a5b23a..8eaba388b141 100644
>> --- a/drivers/gpu/drm/ci/x86_64.config
>> +++ b/drivers/gpu/drm/ci/x86_64.config
>> @@ -24,6 +24,7 @@ CONFIG_DRM=y
>> CONFIG_DRM_PANEL_SIMPLE=y
>> CONFIG_PWM_CROS_EC=y
>> CONFIG_BACKLIGHT_PWM=y
>> +CONFIG_DRM_VKMS=m
>> # Strip out some stuff we don't need for graphics testing, to reduce
>> # the build.
>> diff --git a/drivers/gpu/drm/ci/xfails/virtio_gpu-none-flakes.txt
>> b/drivers/gpu/drm/ci/xfails/virtio_gpu-none-flakes.txt
>> deleted file mode 100644
>> index e69de29bb2d1..000000000000
>> diff --git a/drivers/gpu/drm/ci/xfails/vkms-none-fails.txt
>> b/drivers/gpu/drm/ci/xfails/vkms-none-fails.txt
>> new file mode 100644
>> index 000000000000..a65196a19222
>> --- /dev/null
>> +++ b/drivers/gpu/drm/ci/xfails/vkms-none-fails.txt
>> @@ -0,0 +1,29 @@
>> +kms_cursor_crc@cursor-rapid-movement-128x128,Fail
>> +kms_cursor_crc@cursor-rapid-movement-128x42,Fail
>> +kms_cursor_crc@cursor-rapid-movement-256x256,Fail
>> +kms_cursor_crc@cursor-rapid-movement-256x85,Fail
>> +kms_cursor_crc@cursor-rapid-movement-32x10,Fail
>> +kms_cursor_crc@cursor-rapid-movement-32x32,Fail
>> +kms_cursor_crc@cursor-rapid-movement-512x170,Fail
>> +kms_cursor_crc@cursor-rapid-movement-512x512,Fail
>> +kms_cursor_crc@cursor-rapid-movement-64x21,Fail
>> +kms_cursor_crc@cursor-rapid-movement-64x64,Fail
>> +kms_cursor_legacy@basic-flip-before-cursor-atomic,Fail
>> +kms_cursor_legacy@basic-flip-before-cursor-legacy,Fail
>> +kms_cursor_legacy@cursor-vs-flip-atomic,Fail
>> +kms_cursor_legacy@cursor-vs-flip-legacy,Fail
>> +kms_cursor_legacy@cursor-vs-flip-toggle,Fail
>> +kms_cursor_legacy@cursor-vs-flip-varying-size,Fail
>> +kms_cursor_legacy@cursorA-vs-flipA-toggle,Fail
>> +kms_cursor_legacy@flip-vs-cursor-atomic,Fail
>> +kms_cursor_legacy@flip-vs-cursor-crc-atomic,Fail
>> +kms_cursor_legacy@flip-vs-cursor-crc-legacy,Fail
>> +kms_cursor_legacy@flip-vs-cursor-legacy,Fail
>> +kms_flip@flip-vs-expired-vblank-interruptible,Fail
>> +kms_flip@plain-flip-fb-recreate,Fail
>> +kms_pipe_crc_basic@nonblocking-crc,Fail
>> +kms_pipe_crc_basic@nonblocking-crc-frame-sequence,Fail
>> +kms_pipe_crc_basic@suspend-read-crc,Fail
>> +kms_plane@plane-panning-bottom-right-suspend,Fail
>> +kms_universal_plane@universal-plane-pipe-A-sanity,Fail
>> +kms_vblank@pipe-A-ts-continuation-dpms-suspend,Fail
>> \ No newline at end of file
>> diff --git a/drivers/gpu/drm/ci/xfails/vkms-none-skips.txt
>> b/drivers/gpu/drm/ci/xfails/vkms-none-skips.txt
>> new file mode 100644
>> index 000000000000..07aa62cff108
>> --- /dev/null
>> +++ b/drivers/gpu/drm/ci/xfails/vkms-none-skips.txt
>> @@ -0,0 +1,10 @@
>> +# Hits:
>> +# rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
>> +# rcu: Tasks blocked on level-0 rcu_node (CPUs 0-1): P749/1:b..l
>> +kms_prop_blob@invalid-get-prop
>> +
>> +# keeps printing vkms_vblank_simulate: vblank timer overrun and never
>> ends
>> +kms_invalid_mode@int-max-clock
>> +
>> +# Suspend seems to be broken
>> +.*suspend.*
>> \ No newline at end of file
>> --
>> 2.34.1
>>
@@ -6813,6 +6813,7 @@ L: dri-devel@lists.freedesktop.org
S: Maintained
T: git git://anongit.freedesktop.org/drm/drm-misc
F: Documentation/gpu/vkms.rst
+F: drivers/gpu/drm/ci/xfails/vkms*
F: drivers/gpu/drm/vkms/
DRM DRIVER FOR VIRTUALBOX VIRTUAL GPU
@@ -146,7 +146,6 @@ fi
mkdir -p artifacts/install/lib
mv install/* artifacts/install/.
-rm -rf artifacts/install/modules
ln -s common artifacts/install/ci-common
for image in ${KERNEL_IMAGE_NAME}; do
@@ -120,6 +120,7 @@ stages:
- rockchip
- virtio-gpu
- lint
+ - software-driver
# YAML anchors for rule conditions
# --------------------------------
@@ -21,9 +21,9 @@ cat /sys/kernel/debug/dri/*/state
set -e
# Cannot use HWCI_KERNEL_MODULES as at that point we don't have the module in /lib
-if [ "$IGT_FORCE_DRIVER" = "amdgpu" ]; then
- mv /install/modules/lib/modules/* /lib/modules/.
- modprobe amdgpu
+if [ "$IGT_FORCE_DRIVER" = "amdgpu" || "$IGT_FORCE_DRIVER" = "vkms" ]; then
+ mv /install/modules/lib/modules/* /lib/modules/. || true
+ modprobe --first-time "$IGT_FORCE_DRIVER"
fi
if [ -e "/install/xfails/$DRIVER_NAME-$GPU_VERSION-skips.txt" ]; then
@@ -4,7 +4,7 @@ variables:
DEBIAN_BASE_TAG: "${CONTAINER_TAG}"
DEBIAN_X86_64_BUILD_IMAGE_PATH: "debian/x86_64_build"
- DEBIAN_BUILD_TAG: "${CONTAINER_TAG}"
+ DEBIAN_BUILD_TAG: "2023-09-20-vkms-module-2"
KERNEL_ROOTFS_TAG: "${CONTAINER_TAG}"
@@ -332,4 +332,25 @@ virtio_gpu:none:
- igt:x86_64
rules:
# TODO: current issue: malloc(): corrupted top size. Fix and remove this rule.
- - when: never
\ No newline at end of file
+ - when: never
+
+vkms:none:
+ stage: software-driver
+ variables:
+ DRIVER_NAME: vkms
+ GPU_VERSION: none
+ extends:
+ - .test-gl
+ tags:
+ - kvm
+ script:
+ - ln -sf $CI_PROJECT_DIR/install /install
+ - mv install/bzImage /lava-files/bzImage
+ - mkdir -p /lib/modules
+ - mkdir -p $CI_PROJECT_DIR/results
+ - ln -sf $CI_PROJECT_DIR/results /results
+ - ./install/crosvm-runner.sh ./install/igt_runner.sh
+ needs:
+ - debian/x86_64_test-gl
+ - testing:x86_64
+ - igt:x86_64
\ No newline at end of file
@@ -24,6 +24,7 @@ CONFIG_DRM=y
CONFIG_DRM_PANEL_SIMPLE=y
CONFIG_PWM_CROS_EC=y
CONFIG_BACKLIGHT_PWM=y
+CONFIG_DRM_VKMS=m
# Strip out some stuff we don't need for graphics testing, to reduce
# the build.
deleted file mode 100644
new file mode 100644
@@ -0,0 +1,29 @@
+kms_cursor_crc@cursor-rapid-movement-128x128,Fail
+kms_cursor_crc@cursor-rapid-movement-128x42,Fail
+kms_cursor_crc@cursor-rapid-movement-256x256,Fail
+kms_cursor_crc@cursor-rapid-movement-256x85,Fail
+kms_cursor_crc@cursor-rapid-movement-32x10,Fail
+kms_cursor_crc@cursor-rapid-movement-32x32,Fail
+kms_cursor_crc@cursor-rapid-movement-512x170,Fail
+kms_cursor_crc@cursor-rapid-movement-512x512,Fail
+kms_cursor_crc@cursor-rapid-movement-64x21,Fail
+kms_cursor_crc@cursor-rapid-movement-64x64,Fail
+kms_cursor_legacy@basic-flip-before-cursor-atomic,Fail
+kms_cursor_legacy@basic-flip-before-cursor-legacy,Fail
+kms_cursor_legacy@cursor-vs-flip-atomic,Fail
+kms_cursor_legacy@cursor-vs-flip-legacy,Fail
+kms_cursor_legacy@cursor-vs-flip-toggle,Fail
+kms_cursor_legacy@cursor-vs-flip-varying-size,Fail
+kms_cursor_legacy@cursorA-vs-flipA-toggle,Fail
+kms_cursor_legacy@flip-vs-cursor-atomic,Fail
+kms_cursor_legacy@flip-vs-cursor-crc-atomic,Fail
+kms_cursor_legacy@flip-vs-cursor-crc-legacy,Fail
+kms_cursor_legacy@flip-vs-cursor-legacy,Fail
+kms_flip@flip-vs-expired-vblank-interruptible,Fail
+kms_flip@plain-flip-fb-recreate,Fail
+kms_pipe_crc_basic@nonblocking-crc,Fail
+kms_pipe_crc_basic@nonblocking-crc-frame-sequence,Fail
+kms_pipe_crc_basic@suspend-read-crc,Fail
+kms_plane@plane-panning-bottom-right-suspend,Fail
+kms_universal_plane@universal-plane-pipe-A-sanity,Fail
+kms_vblank@pipe-A-ts-continuation-dpms-suspend,Fail
\ No newline at end of file
new file mode 100644
@@ -0,0 +1,10 @@
+# Hits:
+# rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
+# rcu: Tasks blocked on level-0 rcu_node (CPUs 0-1): P749/1:b..l
+kms_prop_blob@invalid-get-prop
+
+# keeps printing vkms_vblank_simulate: vblank timer overrun and never ends
+kms_invalid_mode@int-max-clock
+
+# Suspend seems to be broken
+.*suspend.*
\ No newline at end of file