[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ae4e612a-47d2-4190-8547-2c8dc13b2cd6@collabora.com>
Date: Fri, 9 Feb 2024 14:47:56 -0300
From: Helen Koike <helen.koike@...labora.com>
To: Vignesh Raman <vignesh.raman@...labora.com>,
dri-devel@...ts.freedesktop.org
Cc: hamohammed.sa@...il.com, daniels@...labora.com,
rodrigosiqueiramelo@...il.com, david.heidelberg@...labora.com,
guilherme.gallo@...labora.com, sergi.blanch.torne@...labora.com,
linux-kernel@...r.kernel.org, melissa.srw@...il.com, mairacanal@...eup.net,
daniel@...ll.ch
Subject: Re: [PATCH v4] drm/ci: add tests on vkms
On 01/02/2024 03:53, Vignesh Raman wrote:
> Add job that runs igt on top of vkms.
>
> Signed-off-by: Vignesh Raman <vignesh.raman@...labora.com>
> Acked-by: Jessica Zhang <quic_jesszhan@...cinc.com>
> Tested-by: Jessica Zhang <quic_jesszhan@...cinc.com>
> Acked-by: Maxime Ripard <mripard@...nel.org>
> Signed-off-by: Helen Koike <helen.koike@...labora.com>
> ---
>
> v2:
> - do not mv modules to /lib/modules in the job definition, leave it to
> crosvm-runner.sh
>
> v3:
> - Enable CONFIG_DRM_VKMS in x86_64.config and update xfails
>
> v3:
> - Build vkms as module and test with latest IGT.
> This patch depends on https://lore.kernel.org/dri-devel/20240130150340.687871-1-vignesh.raman@collabora.com/
>
Do you have a link of a pipeline with this job passing?
Thanks
Helen
> ---
> MAINTAINERS | 1 +
> drivers/gpu/drm/ci/build.sh | 1 -
> drivers/gpu/drm/ci/gitlab-ci.yml | 2 +-
> drivers/gpu/drm/ci/igt_runner.sh | 6 ++--
> drivers/gpu/drm/ci/image-tags.yml | 2 +-
> drivers/gpu/drm/ci/test.yml | 24 +++++++++++++-
> drivers/gpu/drm/ci/x86_64.config | 1 +
> .../drm/ci/xfails/virtio_gpu-none-fails.txt | 1 -
> drivers/gpu/drm/ci/xfails/vkms-none-fails.txt | 32 +++++++++++++++++++
> .../gpu/drm/ci/xfails/vkms-none-flakes.txt | 19 +++++++++++
> drivers/gpu/drm/ci/xfails/vkms-none-skips.txt | 16 ++++++++++
> 11 files changed, 97 insertions(+), 8 deletions(-)
> create mode 100644 drivers/gpu/drm/ci/xfails/vkms-none-fails.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/vkms-none-flakes.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/vkms-none-skips.txt
>
> diff --git a/MAINTAINERS b/MAINTAINERS
> index bcdc17d1aa26..09310a6f4b5f 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -6923,6 +6923,7 @@ L: dri-devel@...ts.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 331a61e0d25a..2e089e03f061 100644
> --- a/drivers/gpu/drm/ci/build.sh
> +++ b/drivers/gpu/drm/ci/build.sh
> @@ -152,7 +152,6 @@ fi
>
> mkdir -p artifacts/install/lib
> mv install/* artifacts/install/.
> -rm -rf artifacts/install/modules
> ln -s common artifacts/install/ci-common
> cp .config artifacts/${CI_JOB_NAME}_config
>
> diff --git a/drivers/gpu/drm/ci/gitlab-ci.yml b/drivers/gpu/drm/ci/gitlab-ci.yml
> index e2b021616a8e..c69fb6af4cf8 100644
> --- a/drivers/gpu/drm/ci/gitlab-ci.yml
> +++ b/drivers/gpu/drm/ci/gitlab-ci.yml
> @@ -107,7 +107,7 @@ stages:
> - meson
> - msm
> - rockchip
> - - virtio-gpu
> + - 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 2fd09b9b7cf6..3c7f000805e5 100755
> --- a/drivers/gpu/drm/ci/igt_runner.sh
> +++ b/drivers/gpu/drm/ci/igt_runner.sh
> @@ -20,10 +20,10 @@ cat /sys/kernel/debug/dri/*/state
> set -e
>
> case "$DRIVER_NAME" in
> - amdgpu)
> + amdgpu|vkms)
> # Cannot use HWCI_KERNEL_MODULES as at that point we don't have the module in /lib
> - mv /install/modules/lib/modules/* /lib/modules/.
> - modprobe amdgpu
> + mv /install/modules/lib/modules/* /lib/modules/. || true
> + modprobe --first-time $DRIVER_NAME
> ;;
> esac
>
> diff --git a/drivers/gpu/drm/ci/image-tags.yml b/drivers/gpu/drm/ci/image-tags.yml
> index cf07c3e09b8c..bf861ab8b9c2 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: "2023-10-08-config"
> + DEBIAN_BUILD_TAG: "2024-01-29-vkms"
>
> KERNEL_ROOTFS_TAG: "2023-10-06-amd"
> PKG_REPO_REV: "67f2c46b"
> diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
> index 8ab8a8f56d6a..58c3cf4b18e0 100644
> --- a/drivers/gpu/drm/ci/test.yml
> +++ b/drivers/gpu/drm/ci/test.yml
> @@ -399,7 +399,7 @@ meson:g12b-display:
> DRIVER_NAME: meson
>
> virtio_gpu:none:
> - stage: virtio-gpu
> + stage: software-driver
> variables:
> CROSVM_GALLIUM_DRIVER: llvmpipe
> DRIVER_NAME: virtio_gpu
> @@ -419,3 +419,25 @@ virtio_gpu:none:
> - debian/x86_64_test-gl
> - testing:x86_64
> - igt:x86_64
> +
> +vkms:none:
> + stage: software-driver
> + variables:
> + DRIVER_NAME: vkms
> + GPU_VERSION: vkms-none
> + extends:
> + - .test-gl
> + - .test-rules
> + 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
> 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-fails.txt b/drivers/gpu/drm/ci/xfails/virtio_gpu-none-fails.txt
> index 007f21e56d89..f82d437909b5 100644
> --- a/drivers/gpu/drm/ci/xfails/virtio_gpu-none-fails.txt
> +++ b/drivers/gpu/drm/ci/xfails/virtio_gpu-none-fails.txt
> @@ -41,7 +41,6 @@ kms_flip@...p-vs-absolute-wf_vblank,Fail
> kms_flip@...p-vs-absolute-wf_vblank-interruptible,Fail
> kms_flip@...p-vs-blocking-wf-vblank,Fail
> kms_flip@...p-vs-expired-vblank,Fail
> -kms_flip@...p-vs-expired-vblank-interruptible,Fail
> kms_flip@...p-vs-modeset-vs-hang,Fail
> kms_flip@...p-vs-panning-vs-hang,Fail
> kms_flip@...p-vs-wf_vblank-interruptible,Fail
> 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..a8b9d79d9a16
> --- /dev/null
> +++ b/drivers/gpu/drm/ci/xfails/vkms-none-fails.txt
> @@ -0,0 +1,32 @@
> +kms_cursor_crc@...sor-rapid-movement-128x128,Fail
> +kms_cursor_crc@...sor-rapid-movement-128x42,Fail
> +kms_cursor_crc@...sor-rapid-movement-256x256,Fail
> +kms_cursor_crc@...sor-rapid-movement-256x85,Fail
> +kms_cursor_crc@...sor-rapid-movement-32x10,Fail
> +kms_cursor_crc@...sor-rapid-movement-32x32,Fail
> +kms_cursor_crc@...sor-rapid-movement-512x170,Fail
> +kms_cursor_crc@...sor-rapid-movement-512x512,Fail
> +kms_cursor_crc@...sor-rapid-movement-64x21,Fail
> +kms_cursor_crc@...sor-rapid-movement-64x64,Fail
> +kms_cursor_legacy@...ic-flip-before-cursor-atomic,Fail
> +kms_cursor_legacy@...ic-flip-before-cursor-legacy,Fail
> +kms_cursor_legacy@...sor-vs-flip-atomic,Fail
> +kms_cursor_legacy@...sor-vs-flip-legacy,Fail
> +kms_cursor_legacy@...sor-vs-flip-toggle,Fail
> +kms_cursor_legacy@...sor-vs-flip-varying-size,Fail
> +kms_cursor_legacy@...p-vs-cursor-atomic,Fail
> +kms_cursor_legacy@...p-vs-cursor-crc-atomic,Fail
> +kms_cursor_legacy@...p-vs-cursor-crc-legacy,Fail
> +kms_cursor_legacy@...p-vs-cursor-legacy,Fail
> +kms_flip@...p-vs-modeset-vs-hang,Fail
> +kms_flip@...p-vs-panning-vs-hang,Fail
> +kms_pipe_crc_basic@...blocking-crc,Fail
> +kms_pipe_crc_basic@...blocking-crc-frame-sequence,Fail
> +kms_pipe_crc_basic@...pend-read-crc,Fail
> +kms_plane@...ne-panning-bottom-right-suspend,Fail
> +kms_universal_plane@...versal-plane-pipe-A-sanity,Fail
> +kms_vblank@...e-A-ts-continuation-dpms-suspend,Fail
> +kms_writeback@...teback-check-output,Fail
> +kms_writeback@...teback-fb-id,Fail
> +kms_writeback@...teback-invalid-parameters,Fail
> +kms_writeback@...teback-pixel-formats,Fail
> diff --git a/drivers/gpu/drm/ci/xfails/vkms-none-flakes.txt b/drivers/gpu/drm/ci/xfails/vkms-none-flakes.txt
> new file mode 100644
> index 000000000000..18afbfcc1c52
> --- /dev/null
> +++ b/drivers/gpu/drm/ci/xfails/vkms-none-flakes.txt
> @@ -0,0 +1,19 @@
> +# Board Name: vkms
> +# Bug Report: https://lore.kernel.org/dri-devel/005da8f1-8050-bffd-653c-2a87ae6376f7@collabora.com/T/#u
> +# IGT Version: 1.28-gb0cc8160e
> +# Linux Version: 6.7.0-rc3
> +# Failure Rate: 50
> +
> +# Reported by deqp-runner
> +kms_cursor_legacy@...sorA-vs-flipA-legacy
> +kms_cursor_legacy@...sorA-vs-flipA-varying-size
> +kms_flip@...p-vs-expired-vblank-interruptible
> +kms_flip@...p-vs-expired-vblank
> +kms_flip@...in-flip-fb-recreate
> +kms_flip@...in-flip-fb-recreate-interruptible
> +kms_flip@...in-flip-ts-check-interruptible
> +
> +# The below test shows inconsistency across multiple runs,
> +# giving results of Pass and Fail alternately.
> +kms_cursor_legacy@...sorA-vs-flipA-toggle
> +kms_pipe_crc_basic@...blocking-crc
> 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..524e7972c75a
> --- /dev/null
> +++ b/drivers/gpu/drm/ci/xfails/vkms-none-skips.txt
> @@ -0,0 +1,16 @@
> +# 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@...alid-get-prop
> +
> +# keeps printing vkms_vblank_simulate: vblank timer overrun and never ends
> +kms_invalid_mode@...-max-clock
> +
> +# Suspend seems to be broken
> +.*suspend.*
> +
> +# Hangs machine and timeout occurs
> +kms_flip@...p-vs-absolute-wf_vblank-interruptible
> +kms_invalid_mode@...o-hdisplay
> +kms_invalid_mode@...-vtotal
> +kms_cursor_crc.*
Powered by blists - more mailing lists