2024-03-06 03:09:48

by Vignesh Raman

[permalink] [raw]
Subject: [PATCH v4 00/11] drm/ci: Add support for GPU and display testing

Some ARM SOCs have a separate display controller and GPU, each with
different drivers. For mediatek mt8173, the GPU driver is powervr,
and the display driver is mediatek. In the case of mediatek mt8183,
the GPU driver is panfrost, and the display driver is mediatek.
With rockchip rk3288/rk3399, the GPU driver is panfrost, while the
display driver is rockchip. For amlogic meson, the GPU driver is
panfrost, and the display driver is meson.

IGT tests run various tests with different xfails and can test both
GPU devices and KMS/display devices. Currently, in drm-ci for MediaTek,
Rockchip, and Amlogic Meson platforms, only the GPU driver is tested.
This leads to incomplete coverage since the display is never tested on
these platforms. This commit series adds support in drm-ci to run tests
for both GPU and display drivers for MediaTek, Rockchip, and Amlogic
Meson platforms.

Uprev mesa and IGT in drm-ci and add amd, v3d, vc4 and vgem specific
tests to testlist. Have testlist.txt per driver and include a base
testlist so that the driver specific tests will run only on those hardware
and add testlists to the MAINTAINERS file.

This series also includes patch to add vkms testing to drm-ci.

Working pipeline link,
https://gitlab.freedesktop.org/vigneshraman/linux/-/pipelines/1119859

Vignesh Raman (11):
drm/ci: arm64.config: Enable CONFIG_DRM_ANALOGIX_ANX7625
drm/ci: uprev mesa version
drm/ci: uprev IGT and update testlist
drm/ci: amdgpu: update xfails
drm/ci: mediatek: Refactor existing mediatek jobs
drm/ci: mediatek: Add job to test panfrost and powervr GPU driver
drm/ci: meson: Refactor existing meson jobs
drm/ci: meson: Add job to test panfrost GPU driver
drm/ci: rockchip: Refactor existing rockchip jobs
drm/ci: rockchip: Add job to test panfrost GPU driver
drm/ci: add tests on vkms

MAINTAINERS | 14 ++
drivers/gpu/drm/ci/arm64.config | 1 +
drivers/gpu/drm/ci/build.sh | 1 -
drivers/gpu/drm/ci/container.yml | 6 +-
drivers/gpu/drm/ci/gitlab-ci.yml | 13 +-
drivers/gpu/drm/ci/igt_runner.sh | 28 ++--
drivers/gpu/drm/ci/image-tags.yml | 5 +-
drivers/gpu/drm/ci/test.yml | 136 +++++++++++++---
drivers/gpu/drm/ci/testlist-amdgpu.txt | 151 ++++++++++++++++++
drivers/gpu/drm/ci/testlist-msm.txt | 50 ++++++
drivers/gpu/drm/ci/testlist-panfrost.txt | 17 ++
drivers/gpu/drm/ci/testlist-v3d.txt | 73 +++++++++
drivers/gpu/drm/ci/testlist-vc4.txt | 49 ++++++
drivers/gpu/drm/ci/testlist.txt | 84 ++++------
drivers/gpu/drm/ci/x86_64.config | 1 +
.../gpu/drm/ci/xfails/amdgpu-stoney-fails.txt | 26 ++-
.../drm/ci/xfails/amdgpu-stoney-flakes.txt | 10 +-
.../gpu/drm/ci/xfails/amdgpu-stoney-skips.txt | 17 +-
.../drm/ci/xfails/mediatek-mt8173-fails.txt | 15 --
.../drm/ci/xfails/mediatek-mt8173-flakes.txt | 13 ++
.../drm/ci/xfails/mediatek-mt8183-fails.txt | 21 ++-
.../drm/ci/xfails/mediatek-mt8183-flakes.txt | 8 +
.../gpu/drm/ci/xfails/meson-g12b-fails.txt | 5 -
.../gpu/drm/ci/xfails/panfrost-g12b-fails.txt | 1 +
.../gpu/drm/ci/xfails/panfrost-g12b-skips.txt | 2 +
.../drm/ci/xfails/panfrost-mt8183-fails.txt | 1 +
.../drm/ci/xfails/panfrost-mt8183-skips.txt | 2 +
.../drm/ci/xfails/panfrost-rk3288-fails.txt | 1 +
.../drm/ci/xfails/panfrost-rk3288-skips.txt | 2 +
.../drm/ci/xfails/panfrost-rk3399-fails.txt | 1 +
.../drm/ci/xfails/panfrost-rk3399-skips.txt | 2 +
.../drm/ci/xfails/rockchip-rk3288-fails.txt | 58 ++-----
.../drm/ci/xfails/rockchip-rk3288-flakes.txt | 20 +++
.../drm/ci/xfails/rockchip-rk3288-skips.txt | 54 +------
.../drm/ci/xfails/rockchip-rk3399-fails.txt | 38 +++--
.../drm/ci/xfails/rockchip-rk3399-flakes.txt | 28 +++-
.../drm/ci/xfails/rockchip-rk3399-skips.txt | 5 +-
.../drm/ci/xfails/virtio_gpu-none-fails.txt | 1 -
drivers/gpu/drm/ci/xfails/vkms-none-fails.txt | 33 ++++
.../gpu/drm/ci/xfails/vkms-none-flakes.txt | 20 +++
drivers/gpu/drm/ci/xfails/vkms-none-skips.txt | 16 ++
41 files changed, 784 insertions(+), 245 deletions(-)
create mode 100644 drivers/gpu/drm/ci/testlist-amdgpu.txt
create mode 100644 drivers/gpu/drm/ci/testlist-msm.txt
create mode 100644 drivers/gpu/drm/ci/testlist-panfrost.txt
create mode 100644 drivers/gpu/drm/ci/testlist-v3d.txt
create mode 100644 drivers/gpu/drm/ci/testlist-vc4.txt
create mode 100644 drivers/gpu/drm/ci/xfails/mediatek-mt8173-flakes.txt
create mode 100644 drivers/gpu/drm/ci/xfails/mediatek-mt8183-flakes.txt
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-g12b-fails.txt
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-g12b-skips.txt
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-mt8183-fails.txt
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-mt8183-skips.txt
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-rk3288-fails.txt
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-rk3288-skips.txt
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-rk3399-fails.txt
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-rk3399-skips.txt
create mode 100644 drivers/gpu/drm/ci/xfails/rockchip-rk3288-flakes.txt
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

--
2.40.1



2024-03-06 03:10:07

by Vignesh Raman

[permalink] [raw]
Subject: [PATCH v4 02/11] drm/ci: uprev mesa version

zlib.net is not allowing tarball download anymore and results
in below error in kernel+rootfs_arm32 container build,
urllib.error.HTTPError: HTTP Error 403: Forbidden
urllib.error.HTTPError: HTTP Error 415: Unsupported Media Type

Uprev mesa which includes a fix for this issue.
https://gitlab.freedesktop.org/mesa/mesa/-/commit/908f444e

Signed-off-by: Vignesh Raman <[email protected]>
---

v3:
- New patch in series to uprev mesa.

v4:
- Fix checkpatch warning.

---
drivers/gpu/drm/ci/container.yml | 6 +++---
drivers/gpu/drm/ci/gitlab-ci.yml | 6 +++---
drivers/gpu/drm/ci/image-tags.yml | 3 ++-
3 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/ci/container.yml b/drivers/gpu/drm/ci/container.yml
index 9764e7921a4f..1060eb380b02 100644
--- a/drivers/gpu/drm/ci/container.yml
+++ b/drivers/gpu/drm/ci/container.yml
@@ -40,11 +40,11 @@ debian/x86_64_test-android:
rules:
- when: never

-windows_build_vs2019:
+windows_build_msvc:
rules:
- when: never

-windows_test_vs2019:
+windows_test_msvc:
rules:
- when: never

@@ -56,7 +56,7 @@ rustfmt:
rules:
- when: never

-windows_vs2019:
+windows_msvc:
rules:
- when: never

diff --git a/drivers/gpu/drm/ci/gitlab-ci.yml b/drivers/gpu/drm/ci/gitlab-ci.yml
index 084e3ff8e3f4..bc8cb3420476 100644
--- a/drivers/gpu/drm/ci/gitlab-ci.yml
+++ b/drivers/gpu/drm/ci/gitlab-ci.yml
@@ -1,6 +1,6 @@
variables:
DRM_CI_PROJECT_PATH: &drm-ci-project-path mesa/mesa
- DRM_CI_COMMIT_SHA: &drm-ci-commit-sha 9d162de9a05155e1c4041857a5848842749164cf
+ DRM_CI_COMMIT_SHA: &drm-ci-commit-sha c4b32f9e90b7204735e6adf1f60c178bf85752e7

UPSTREAM_REPO: git://anongit.freedesktop.org/drm/drm
TARGET_BRANCH: drm-next
@@ -26,7 +26,7 @@ variables:
JOB_ARTIFACTS_BASE: ${PIPELINE_ARTIFACTS_BASE}/${CI_JOB_ID}
# default kernel for rootfs before injecting the current kernel tree
KERNEL_REPO: "gfx-ci/linux"
- KERNEL_TAG: "v6.6.4-for-mesa-ci-e4f4c500f7fb"
+ KERNEL_TAG: "v6.6.13-mesa-9916"
KERNEL_IMAGE_BASE: https://${S3_HOST}/mesa-lava/${KERNEL_REPO}/${KERNEL_TAG}
LAVA_TAGS: subset-1-gfx
LAVA_JOB_PRIORITY: 30
@@ -98,6 +98,7 @@ include:
stages:
- sanity
- container
+ - code-validation
- git-archive
- build
- amdgpu
@@ -107,7 +108,6 @@ stages:
- msm
- rockchip
- virtio-gpu
- - lint

# YAML anchors for rule conditions
# --------------------------------
diff --git a/drivers/gpu/drm/ci/image-tags.yml b/drivers/gpu/drm/ci/image-tags.yml
index 7ab4f2514da8..cf07c3e09b8c 100644
--- a/drivers/gpu/drm/ci/image-tags.yml
+++ b/drivers/gpu/drm/ci/image-tags.yml
@@ -1,5 +1,5 @@
variables:
- CONTAINER_TAG: "2023-10-11-mesa-uprev"
+ CONTAINER_TAG: "2022-01-29-mesa-uprev"
DEBIAN_X86_64_BUILD_BASE_IMAGE: "debian/x86_64_build-base"
DEBIAN_BASE_TAG: "${CONTAINER_TAG}"

@@ -7,6 +7,7 @@ variables:
DEBIAN_BUILD_TAG: "2023-10-08-config"

KERNEL_ROOTFS_TAG: "2023-10-06-amd"
+ PKG_REPO_REV: "67f2c46b"

DEBIAN_X86_64_TEST_BASE_IMAGE: "debian/x86_64_test-base"
DEBIAN_X86_64_TEST_IMAGE_GL_PATH: "debian/x86_64_test-gl"
--
2.40.1


2024-03-06 03:10:12

by Vignesh Raman

[permalink] [raw]
Subject: [PATCH v4 09/11] drm/ci: rockchip: Refactor existing rockchip jobs

For rockchip rk3288 and rk3399, the display driver is rockchip.
Currently, in drm-ci for rockchip, only the display driver is
tested. Refactor the existing rockchip jobs so that gpu driver
testing jobs can be added later and update xfails accordingly.

Signed-off-by: Vignesh Raman <[email protected]>
---

v2:
- Refactor the patch to rename job to indicate display driver testing,
rename the existing xfail files.

v3:
- Add the job name in GPU_VERSION and use it for xfail file names
instead of using DRIVER_NAME. Also update xfails.

v4:
- Remove the display suffix in job and rename xfails accordingly.
Remove the change adding job name in GPU_VERSION.

---
drivers/gpu/drm/ci/test.yml | 36 ++++++++----
.../drm/ci/xfails/rockchip-rk3288-fails.txt | 58 ++++++-------------
.../drm/ci/xfails/rockchip-rk3288-flakes.txt | 20 +++++++
.../drm/ci/xfails/rockchip-rk3288-skips.txt | 54 ++---------------
.../drm/ci/xfails/rockchip-rk3399-fails.txt | 38 ++++++------
.../drm/ci/xfails/rockchip-rk3399-flakes.txt | 28 +++++++--
.../drm/ci/xfails/rockchip-rk3399-skips.txt | 5 +-
7 files changed, 110 insertions(+), 129 deletions(-)
create mode 100644 drivers/gpu/drm/ci/xfails/rockchip-rk3288-flakes.txt

diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
index 6ae6398b3d88..831e580e6dfd 100644
--- a/drivers/gpu/drm/ci/test.yml
+++ b/drivers/gpu/drm/ci/test.yml
@@ -153,33 +153,45 @@ msm:sdm845:
script:
- ./install/bare-metal/cros-servo.sh

-rockchip:rk3288:
- extends:
- - .lava-igt:arm32
+.rockchip:
stage: rockchip
variables:
- DRIVER_NAME: rockchip
- DEVICE_TYPE: rk3288-veyron-jaq
DTB: ${DEVICE_TYPE}
BOOT_METHOD: depthcharge
+
+.rk3288:
+ extends:
+ - .lava-igt:arm32
+ - .rockchip
+ variables:
+ DEVICE_TYPE: rk3288-veyron-jaq
KERNEL_IMAGE_TYPE: "zimage"
- GPU_VERSION: rk3288
RUNNER_TAG: mesa-ci-x86-64-lava-rk3288-veyron-jaq

-rockchip:rk3399:
+.rk3399:
extends:
- .lava-igt:arm64
- stage: rockchip
+ - .rockchip
parallel: 2
variables:
- DRIVER_NAME: rockchip
DEVICE_TYPE: rk3399-gru-kevin
- DTB: ${DEVICE_TYPE}
- BOOT_METHOD: depthcharge
KERNEL_IMAGE_TYPE: ""
- GPU_VERSION: rk3399
RUNNER_TAG: mesa-ci-x86-64-lava-rk3399-gru-kevin

+rockchip:rk3288:
+ extends:
+ - .rk3288
+ variables:
+ GPU_VERSION: rk3288
+ DRIVER_NAME: rockchip
+
+rockchip:rk3399:
+ extends:
+ - .rk3399
+ variables:
+ GPU_VERSION: rk3399
+ DRIVER_NAME: rockchip
+
.i915:
extends:
- .lava-igt:x86_64
diff --git a/drivers/gpu/drm/ci/xfails/rockchip-rk3288-fails.txt b/drivers/gpu/drm/ci/xfails/rockchip-rk3288-fails.txt
index 90c63f519e9e..c16e0a06cc8f 100644
--- a/drivers/gpu/drm/ci/xfails/rockchip-rk3288-fails.txt
+++ b/drivers/gpu/drm/ci/xfails/rockchip-rk3288-fails.txt
@@ -1,54 +1,30 @@
-kms_3d,Crash
-kms_bw@linear-tiling-2-displays-1920x1080p,Fail
kms_bw@linear-tiling-2-displays-2560x1440p,Fail
-kms_bw@linear-tiling-2-displays-3840x2160p,Fail
kms_bw@linear-tiling-3-displays-1920x1080p,Fail
-kms_bw@linear-tiling-3-displays-2560x1440p,Fail
-kms_bw@linear-tiling-3-displays-3840x2160p,Fail
+kms_cursor_crc@cursor-onscreen-32x10,Crash
+kms_cursor_crc@cursor-onscreen-64x21,Crash
+kms_cursor_crc@cursor-onscreen-64x64,Crash
+kms_cursor_crc@cursor-random-32x10,Crash
+kms_cursor_crc@cursor-random-64x21,Crash
+kms_cursor_crc@cursor-random-64x64,Crash
+kms_cursor_crc@cursor-sliding-32x10,Crash
+kms_cursor_crc@cursor-sliding-32x32,Crash
+kms_cursor_crc@cursor-sliding-64x64,Crash
+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-atomic-transitions,Fail
+kms_cursor_legacy@cursor-vs-flip-toggle,Fail
+kms_cursor_legacy@flip-vs-cursor-crc-atomic,Crash
+kms_cursor_legacy@flip-vs-cursor-crc-legacy,Crash
kms_flip@flip-vs-modeset-vs-hang,Crash
kms_flip@flip-vs-panning-vs-hang,Crash
-kms_force_connector_basic@force-load-detect,Fail
kms_invalid_mode@int-max-clock,Crash
-kms_pipe_crc_basic@compare-crc-sanitycheck-nv12,Crash
-kms_pipe_crc_basic@nonblocking-crc-frame-sequence,Crash
kms_pipe_crc_basic@read-crc-frame-sequence,Crash
kms_plane@pixel-format,Crash
-kms_plane@pixel-format-source-clamping,Crash
-kms_plane@plane-position-hole,Crash
-kms_plane@plane-position-hole-dpms,Crash
kms_plane_cursor@overlay,Crash
-kms_plane_cursor@pipe-A-overlay-size-128,Fail
-kms_plane_cursor@pipe-A-overlay-size-256,Fail
-kms_plane_cursor@pipe-A-overlay-size-64,Fail
-kms_plane_cursor@pipe-A-primary-size-128,Fail
-kms_plane_cursor@pipe-A-primary-size-256,Fail
-kms_plane_cursor@pipe-A-primary-size-64,Fail
-kms_plane_cursor@pipe-A-viewport-size-128,Fail
-kms_plane_cursor@pipe-A-viewport-size-256,Fail
-kms_plane_cursor@pipe-A-viewport-size-64,Fail
-kms_plane_cursor@pipe-B-overlay-size-128,Fail
-kms_plane_cursor@pipe-B-overlay-size-256,Fail
-kms_plane_cursor@pipe-B-overlay-size-64,Fail
-kms_plane_cursor@pipe-B-primary-size-128,Fail
-kms_plane_cursor@pipe-B-primary-size-256,Fail
-kms_plane_cursor@pipe-B-primary-size-64,Fail
-kms_plane_cursor@pipe-B-viewport-size-128,Fail
-kms_plane_cursor@pipe-B-viewport-size-256,Fail
-kms_plane_cursor@pipe-B-viewport-size-64,Fail
kms_plane_cursor@primary,Crash
-kms_plane_cursor@viewport,Crash
-kms_plane_lowres@tiling-none,Fail
-kms_plane_scaling@downscale-with-modifier-factor-0-25,Fail
-kms_plane_scaling@downscale-with-rotation-factor-0-25,Fail
-kms_plane_scaling@upscale-with-modifier-20x20,Fail
-kms_plane_scaling@upscale-with-modifier-factor-0-25,Fail
-kms_plane_scaling@upscale-with-pixel-format-20x20,Fail
-kms_plane_scaling@upscale-with-pixel-format-factor-0-25,Fail
-kms_plane_scaling@upscale-with-rotation-20x20,Fail
-kms_prime@basic-crc,Fail
-kms_properties@connector-properties-atomic,Crash
+kms_prop_blob@invalid-set-prop,Crash
kms_properties@connector-properties-legacy,Crash
kms_properties@get_properties-sanity-atomic,Crash
kms_properties@get_properties-sanity-non-atomic,Crash
kms_rmfb@close-fd,Crash
-kms_setmode@invalid-clone-single-crtc,Crash
diff --git a/drivers/gpu/drm/ci/xfails/rockchip-rk3288-flakes.txt b/drivers/gpu/drm/ci/xfails/rockchip-rk3288-flakes.txt
new file mode 100644
index 000000000000..de13bac3a5bc
--- /dev/null
+++ b/drivers/gpu/drm/ci/xfails/rockchip-rk3288-flakes.txt
@@ -0,0 +1,20 @@
+# Board Name: rk3288-veyron-jaq.dtb
+# Bug Report: https://lore.kernel.org/dri-devel/[email protected]/T/#u
+# Failure Rate: 50
+# IGT Version: 1.28-gd2af13d9f
+# Linux Version: 6.7.0-rc3
+
+# Reported by deqp-runner
+kms_cursor_crc@cursor-offscreen-64x21
+kms_cursor_legacy@flip-vs-cursor-legacy
+kms_cursor_legacy@flip-vs-cursor-atomic
+kms_plane@plane-panning-top-left
+kms_cursor_crc@cursor-alpha-opaque
+kms_flip@dpms-vs-vblank-race-interruptible
+kms_universal_plane@universal-plane-functional
+
+# The below test shows inconsistency across multiple runs, giving
+# results of Pass and Crash alternately.
+kms_cursor_crc@cursor-size-change
+core_setmaster_vs_auth
+kms_flip@modeset-vs-vblank-race
diff --git a/drivers/gpu/drm/ci/xfails/rockchip-rk3288-skips.txt b/drivers/gpu/drm/ci/xfails/rockchip-rk3288-skips.txt
index f20c3574b75a..627bf03f3c78 100644
--- a/drivers/gpu/drm/ci/xfails/rockchip-rk3288-skips.txt
+++ b/drivers/gpu/drm/ci/xfails/rockchip-rk3288-skips.txt
@@ -1,52 +1,8 @@
# Suspend to RAM seems to be broken on this machine
.*suspend.*

-# Too unstable, machine ends up hanging after lots of Oopses
-kms_cursor_legacy.*
-
-# Started hanging the machine on Linux 5.19-rc2:
-#
-# [IGT] kms_plane_lowres: executing
-# [IGT] kms_plane_lowres: starting subtest pipe-F-tiling-y
-# [IGT] kms_plane_lowres: exiting, ret=77
-# Console: switching to colour frame buffer device 170x48
-# rockchip-drm display-subsystem: [drm] *ERROR* flip_done timed out
-# rockchip-drm display-subsystem: [drm] *ERROR* [CRTC:35:crtc-0] commit wait timed out
-# BUG: spinlock bad magic on CPU#3, kms_plane_lowre/482
-# 8<--- cut here ---
-# Unable to handle kernel paging request at virtual address 7812078e
-# [7812078e] *pgd=00000000
-# Internal error: Oops: 5 [#1] SMP ARM
-# Modules linked in:
-# CPU: 3 PID: 482 Comm: kms_plane_lowre Tainted: G W 5.19.0-rc2-323596-g00535de92171 #1
-# Hardware name: Rockchip (Device Tree)
-# Process kms_plane_lowre (pid: 482, stack limit = 0x1193ac2b)
-# spin_dump from do_raw_spin_lock+0xa4/0xe8
-# do_raw_spin_lock from wait_for_completion_timeout+0x2c/0x120
-# wait_for_completion_timeout from drm_crtc_commit_wait+0x18/0x7c
-# drm_crtc_commit_wait from drm_atomic_helper_wait_for_dependencies+0x44/0x168
-# drm_atomic_helper_wait_for_dependencies from commit_tail+0x34/0x180
-# commit_tail from drm_atomic_helper_commit+0x164/0x18c
-# drm_atomic_helper_commit from drm_atomic_commit+0xac/0xe4
-# drm_atomic_commit from drm_client_modeset_commit_atomic+0x23c/0x284
-# drm_client_modeset_commit_atomic from drm_client_modeset_commit_locked+0x60/0x1c8
-# drm_client_modeset_commit_locked from drm_client_modeset_commit+0x24/0x40
-# drm_client_modeset_commit from drm_fbdev_client_restore+0x58/0x94
-# drm_fbdev_client_restore from drm_client_dev_restore+0x70/0xbc
-# drm_client_dev_restore from drm_release+0xf4/0x114
-# drm_release from __fput+0x74/0x240
-# __fput from task_work_run+0x84/0xb4
-# task_work_run from do_exit+0x34c/0xa20
-# do_exit from do_group_exit+0x34/0x98
-# do_group_exit from __wake_up_parent+0x0/0x18
-# Code: e595c008 12843d19 03e00000 03093168 (15940508)
-# ---[ end trace 0000000000000000 ]---
-# note: kms_plane_lowre[482] exited with preempt_count 1
-# Fixing recursive fault but reboot is needed!
-kms_plane_lowres@pipe-F-tiling-y
-
-# Take too long, we have only two machines, and these are very flaky
-kms_cursor_crc.*
-
-# Machine is hanging in this test, so skip it
-kms_pipe_crc_basic@disable-crc-after-crtc
\ No newline at end of file
+# Machine is hanging in this test with linux kernel version 6.7.0-rc4, so skip it
+kms_cursor_crc@cursor-onscreen-32x32
+kms_pipe_crc_basic@disable-crc-after-crtc
+kms_pipe_crc_basic@pipe-A-eDP-1
+kms_bw@linear-tiling-3-displays-2560x1440
diff --git a/drivers/gpu/drm/ci/xfails/rockchip-rk3399-fails.txt b/drivers/gpu/drm/ci/xfails/rockchip-rk3399-fails.txt
index d516d9c1d546..ace0d6ed6f2f 100644
--- a/drivers/gpu/drm/ci/xfails/rockchip-rk3399-fails.txt
+++ b/drivers/gpu/drm/ci/xfails/rockchip-rk3399-fails.txt
@@ -1,12 +1,13 @@
-kms_color@gamma,Fail
+kms_atomic_transition@modeset-transition,Fail
+kms_atomic_transition@modeset-transition-fencing,Fail
+kms_atomic_transition@plane-toggle-modeset-transition,Fail
kms_color@legacy-gamma,Fail
-kms_color@pipe-A-legacy-gamma,Fail
-kms_color@pipe-B-legacy-gamma,Fail
kms_cursor_crc@cursor-alpha-opaque,Fail
kms_cursor_crc@cursor-alpha-transparent,Fail
kms_cursor_crc@cursor-dpms,Fail
kms_cursor_crc@cursor-offscreen-32x10,Fail
kms_cursor_crc@cursor-offscreen-32x32,Fail
+kms_cursor_crc@cursor-offscreen-64x21,Fail
kms_cursor_crc@cursor-offscreen-64x64,Fail
kms_cursor_crc@cursor-onscreen-32x10,Fail
kms_cursor_crc@cursor-onscreen-32x32,Fail
@@ -16,6 +17,7 @@ kms_cursor_crc@cursor-random-32x10,Fail
kms_cursor_crc@cursor-random-32x32,Fail
kms_cursor_crc@cursor-random-64x21,Fail
kms_cursor_crc@cursor-random-64x64,Fail
+kms_cursor_crc@cursor-rapid-movement-32x10,Fail
kms_cursor_crc@cursor-rapid-movement-32x32,Fail
kms_cursor_crc@cursor-rapid-movement-64x21,Fail
kms_cursor_crc@cursor-rapid-movement-64x64,Fail
@@ -24,23 +26,33 @@ kms_cursor_crc@cursor-sliding-32x10,Fail
kms_cursor_crc@cursor-sliding-32x32,Fail
kms_cursor_crc@cursor-sliding-64x21,Fail
kms_cursor_crc@cursor-sliding-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@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_cursor_legacy@long-nonblocking-modeset-vs-cursor-atomic,Fail
kms_flip@basic-flip-vs-wf_vblank,Fail
kms_flip@blocking-wf_vblank,Fail
kms_flip@dpms-vs-vblank-race,Fail
+kms_flip@dpms-vs-vblank-race-interruptible,Fail
kms_flip@flip-vs-absolute-wf_vblank,Fail
-kms_flip@flip-vs-absolute-wf_vblank-interruptible,Fail
kms_flip@flip-vs-blocking-wf-vblank,Fail
kms_flip@flip-vs-modeset-vs-hang,Fail
kms_flip@flip-vs-panning,Fail
kms_flip@flip-vs-panning-interruptible,Fail
kms_flip@flip-vs-panning-vs-hang,Fail
kms_flip@modeset-vs-vblank-race,Fail
+kms_flip@modeset-vs-vblank-race-interruptible,Fail
kms_flip@plain-flip-fb-recreate,Fail
kms_flip@plain-flip-fb-recreate-interruptible,Fail
kms_flip@plain-flip-ts-check,Fail
kms_flip@plain-flip-ts-check-interruptible,Fail
kms_flip@wf_vblank-ts-check,Fail
-kms_flip@wf_vblank-ts-check-interruptible,Fail
kms_invalid_mode@int-max-clock,Fail
kms_pipe_crc_basic@compare-crc-sanitycheck-nv12,Fail
kms_pipe_crc_basic@compare-crc-sanitycheck-xr24,Fail
@@ -56,20 +68,6 @@ kms_plane@plane-panning-top-left,Fail
kms_plane@plane-position-covered,Fail
kms_plane@plane-position-hole,Fail
kms_plane@plane-position-hole-dpms,Fail
-kms_plane_cursor@overlay,Fail
-kms_plane_cursor@pipe-B-overlay-size-128,Fail
-kms_plane_cursor@pipe-B-overlay-size-256,Fail
-kms_plane_cursor@pipe-B-overlay-size-64,Fail
-kms_plane_cursor@pipe-B-primary-size-128,Fail
-kms_plane_cursor@pipe-B-primary-size-256,Fail
-kms_plane_cursor@pipe-B-primary-size-64,Fail
-kms_plane_cursor@pipe-B-viewport-size-128,Fail
-kms_plane_cursor@pipe-B-viewport-size-256,Fail
-kms_plane_cursor@pipe-B-viewport-size-64,Fail
-kms_plane_cursor@primary,Fail
-kms_plane_cursor@viewport,Fail
-kms_plane_multiple@atomic-pipe-B-tiling-none,Fail
kms_plane_multiple@tiling-none,Fail
-kms_prime@basic-crc,Fail
kms_rmfb@close-fd,Fail
-kms_universal_plane@universal-plane-pipe-B-functional,Fail
+kms_universal_plane@universal-plane-functional,Fail
diff --git a/drivers/gpu/drm/ci/xfails/rockchip-rk3399-flakes.txt b/drivers/gpu/drm/ci/xfails/rockchip-rk3399-flakes.txt
index c9fdc623ab91..5126a849bf4a 100644
--- a/drivers/gpu/drm/ci/xfails/rockchip-rk3399-flakes.txt
+++ b/drivers/gpu/drm/ci/xfails/rockchip-rk3399-flakes.txt
@@ -1,7 +1,25 @@
-kms_bw@linear-tiling-2-displays-1920x1080p
-kms_cursor_crc@cursor-offscreen-64x21
+# Board Name: rk3399-gru-kevin.dtb
+# Bug Report: https://lore.kernel.org/dri-devel/[email protected]/T/#u
+# IGT Version: 1.28-gd2af13d9f
+# Failure Rate: 50
+# Linux Version: 6.7.0-rc3
+
+# Reported by deqp-runner
+kms_bw@linear-tiling-1-displays-1920x1080p
+kms_color@gamma
+kms_cursor_legacy@cursorA-vs-flipA-toggle
+kms_cursor_legacy@nonblocking-modeset-vs-cursor-atomic
+kms_flip@dpms-vs-vblank-race
kms_flip@dpms-vs-vblank-race-interruptible
+kms_flip@flip-vs-absolute-wf_vblank-interruptible
kms_flip@flip-vs-wf_vblank-interruptible
-kms_plane_cursor@overlay
-kms_plane_cursor@primary
-kms_plane_cursor@viewport
+kms_flip@modeset-vs-vblank-race-interruptible
+kms_pipe_crc_basic@compare-crc-sanitycheck-xr24
+kms_setmode@basic
+
+# The below test shows inconsistency across multiple runs, giving
+# results of Pass and Crash alternately.
+kms_bw@linear-tiling-2-displays-1920x1080p
+kms_bw@linear-tiling-3-displays-2560x1440p
+kms_cursor_crc@cursor-rapid-movement-32x10
+kms_flip@wf_vblank-ts-check-interruptible
diff --git a/drivers/gpu/drm/ci/xfails/rockchip-rk3399-skips.txt b/drivers/gpu/drm/ci/xfails/rockchip-rk3399-skips.txt
index 10c3d81a919a..cf5577b7720c 100644
--- a/drivers/gpu/drm/ci/xfails/rockchip-rk3399-skips.txt
+++ b/drivers/gpu/drm/ci/xfails/rockchip-rk3399-skips.txt
@@ -1,5 +1,6 @@
# Suspend to RAM seems to be broken on this machine
.*suspend.*

-# Too unstable, machine ends up hanging after lots of Oopses
-kms_cursor_legacy.*
+# Machine ends up hanging after lots of Oopses with linux version 6.7.0-rc4
+# rockchip-dp ff970000.dp: AUX CH error happened: 0x2
+kms_plane_multiple.*
--
2.40.1


2024-03-06 03:10:30

by Vignesh Raman

[permalink] [raw]
Subject: [PATCH v4 05/11] drm/ci: mediatek: Refactor existing mediatek jobs

For mediatek mt8173 and mt8183, the display driver is mediatek.
Currently, in drm-ci for mediatek, only the display driver is
tested. Refactor the existing mediatek jobs so that gpu driver
testing jobs can be added later and update xfails accordingly.
Since the correct driver name is passed from the job to test gpu
and display driver, remove the check to set IGT_FORCE_DRIVER
based on driver name.

Signed-off-by: Vignesh Raman <[email protected]>
---

v2:
- Refactor the patch to rename job to indicate display driver testing,
rename the existing xfail files, and remove IGT_FORCE_DRIVER from the
script since it's now set by the job.

v3:
- Add the job name in GPU_VERSION and use it for xfail file names instead
of using DRIVER_NAME. Also update xfails.

v4:
- Remove the display suffix in job and rename xfails accordingly.
Remove the change adding job name in GPU_VERSION.

---
drivers/gpu/drm/ci/igt_runner.sh | 10 ---------
drivers/gpu/drm/ci/test.yml | 21 ++++++++++++++-----
.../drm/ci/xfails/mediatek-mt8173-fails.txt | 15 -------------
.../drm/ci/xfails/mediatek-mt8173-flakes.txt | 13 ++++++++++++
.../drm/ci/xfails/mediatek-mt8183-fails.txt | 21 ++++++++++++-------
.../drm/ci/xfails/mediatek-mt8183-flakes.txt | 8 +++++++
6 files changed, 50 insertions(+), 38 deletions(-)
create mode 100644 drivers/gpu/drm/ci/xfails/mediatek-mt8173-flakes.txt
create mode 100644 drivers/gpu/drm/ci/xfails/mediatek-mt8183-flakes.txt

diff --git a/drivers/gpu/drm/ci/igt_runner.sh b/drivers/gpu/drm/ci/igt_runner.sh
index 77cd81fe6d1a..711f32772e48 100755
--- a/drivers/gpu/drm/ci/igt_runner.sh
+++ b/drivers/gpu/drm/ci/igt_runner.sh
@@ -20,16 +20,6 @@ cat /sys/kernel/debug/dri/*/state
set -e

case "$DRIVER_NAME" in
- rockchip|meson)
- export IGT_FORCE_DRIVER="panfrost"
- ;;
- mediatek)
- if [ "$GPU_VERSION" = "mt8173" ]; then
- export IGT_FORCE_DRIVER=${DRIVER_NAME}
- elif [ "$GPU_VERSION" = "mt8183" ]; then
- export IGT_FORCE_DRIVER="panfrost"
- fi
- ;;
amdgpu)
# Cannot use HWCI_KERNEL_MODULES as at that point we don't have the module in /lib
mv /install/modules/lib/modules/* /lib/modules/.
diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
index 0857773e5c5f..f8f48523ada3 100644
--- a/drivers/gpu/drm/ci/test.yml
+++ b/drivers/gpu/drm/ci/test.yml
@@ -282,29 +282,40 @@ amdgpu:stoney:
- .lava-igt:arm64
stage: mediatek
variables:
- DRIVER_NAME: mediatek
DTB: ${DEVICE_TYPE}
BOOT_METHOD: depthcharge
KERNEL_IMAGE_TYPE: ""

-mediatek:mt8173:
+.mt8173:
extends:
- .mediatek
parallel: 4
variables:
DEVICE_TYPE: mt8173-elm-hana
- GPU_VERSION: mt8173
RUNNER_TAG: mesa-ci-x86-64-lava-mt8173-elm-hana

-mediatek:mt8183:
+.mt8183:
extends:
- .mediatek
parallel: 3
variables:
DEVICE_TYPE: mt8183-kukui-jacuzzi-juniper-sku16
- GPU_VERSION: mt8183
RUNNER_TAG: mesa-ci-x86-64-lava-mt8183-kukui-jacuzzi-juniper-sku16

+mediatek:mt8173:
+ extends:
+ - .mt8173
+ variables:
+ GPU_VERSION: mt8173
+ DRIVER_NAME: mediatek
+
+mediatek:mt8183:
+ extends:
+ - .mt8183
+ variables:
+ GPU_VERSION: mt8183
+ DRIVER_NAME: mediatek
+
# drm-mtk doesn't even probe yet in mainline for mt8192
.mediatek:mt8192:
extends:
diff --git a/drivers/gpu/drm/ci/xfails/mediatek-mt8173-fails.txt b/drivers/gpu/drm/ci/xfails/mediatek-mt8173-fails.txt
index ef0cb7c3698c..c63abd603b02 100644
--- a/drivers/gpu/drm/ci/xfails/mediatek-mt8173-fails.txt
+++ b/drivers/gpu/drm/ci/xfails/mediatek-mt8173-fails.txt
@@ -9,28 +9,13 @@ kms_bw@linear-tiling-3-displays-1920x1080p,Fail
kms_bw@linear-tiling-3-displays-2560x1440p,Fail
kms_bw@linear-tiling-3-displays-3840x2160p,Fail
kms_color@invalid-gamma-lut-sizes,Fail
-kms_color@pipe-A-invalid-gamma-lut-sizes,Fail
-kms_color@pipe-B-invalid-gamma-lut-sizes,Fail
kms_cursor_legacy@cursor-vs-flip-atomic,Fail
kms_cursor_legacy@cursor-vs-flip-legacy,Fail
kms_flip@flip-vs-modeset-vs-hang,Fail
kms_flip@flip-vs-panning-vs-hang,Fail
kms_flip@flip-vs-suspend,Fail
kms_flip@flip-vs-suspend-interruptible,Fail
-kms_force_connector_basic@force-edid,Fail
-kms_force_connector_basic@force-load-detect,Fail
-kms_force_connector_basic@prune-stale-modes,Fail
-kms_hdmi_inject@inject-4k,Fail
-kms_plane_scaling@planes-upscale-20x20,Fail
-kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25,Fail
-kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5,Fail
-kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-75,Fail
-kms_plane_scaling@upscale-with-modifier-20x20,Fail
-kms_plane_scaling@upscale-with-pixel-format-20x20,Fail
-kms_plane_scaling@upscale-with-rotation-20x20,Fail
kms_properties@get_properties-sanity-atomic,Fail
kms_properties@plane-properties-atomic,Fail
kms_properties@plane-properties-legacy,Fail
kms_rmfb@close-fd,Fail
-kms_selftest@drm_format,Timeout
-kms_selftest@drm_format_helper,Timeout
diff --git a/drivers/gpu/drm/ci/xfails/mediatek-mt8173-flakes.txt b/drivers/gpu/drm/ci/xfails/mediatek-mt8173-flakes.txt
new file mode 100644
index 000000000000..64b30c092c85
--- /dev/null
+++ b/drivers/gpu/drm/ci/xfails/mediatek-mt8173-flakes.txt
@@ -0,0 +1,13 @@
+# Board Name: mt8173-elm-hana.dtb
+# Bug Report: https://lore.kernel.org/dri-devel/[email protected]/T/#u
+# IGT Version: 1.28-gd2af13d9f
+# Failure Rate: 50
+# Linux Version: 6.7.0-rc3
+
+# Reported by deqp-runner
+kms_cursor_legacy@cursor-vs-flip-atomic-transitions
+
+# Below test shows inconsistency across multiple runs,
+# giving results of Pass and Timeout/Fail alternately
+kms_prop_blob@invalid-set-prop
+kms_prop_blob@invalid-set-prop-any
diff --git a/drivers/gpu/drm/ci/xfails/mediatek-mt8183-fails.txt b/drivers/gpu/drm/ci/xfails/mediatek-mt8183-fails.txt
index 67d690fc4037..28c825c9cd60 100644
--- a/drivers/gpu/drm/ci/xfails/mediatek-mt8183-fails.txt
+++ b/drivers/gpu/drm/ci/xfails/mediatek-mt8183-fails.txt
@@ -1,13 +1,18 @@
-kms_addfb_basic@addfb25-bad-modifier,Fail
+core_setmaster_vs_auth,Fail
+kms_bw@linear-tiling-1-displays-1920x1080p,Fail
kms_bw@linear-tiling-1-displays-2560x1440p,Fail
+kms_bw@linear-tiling-1-displays-3840x2160p,Fail
kms_bw@linear-tiling-2-displays-1920x1080p,Fail
kms_bw@linear-tiling-2-displays-2560x1440p,Fail
kms_bw@linear-tiling-2-displays-3840x2160p,Fail
-kms_bw@linear-tiling-3-displays-2560x1440p,Fail
-kms_bw@linear-tiling-3-displays-3840x2160p,Fail
-kms_color@pipe-A-invalid-gamma-lut-sizes,Fail
-kms_plane_cursor@overlay,Fail
-kms_plane_cursor@primary,Fail
-kms_plane_cursor@viewport,Fail
-kms_plane_scaling@upscale-with-rotation-20x20,Fail
+kms_color@invalid-gamma-lut-sizes,Fail
+kms_cursor_legacy@cursor-vs-flip-atomic,Fail
+kms_cursor_legacy@cursor-vs-flip-legacy,Fail
+kms_flip@flip-vs-modeset-vs-hang,Fail
+kms_flip@flip-vs-panning-vs-hang,Fail
+kms_flip@flip-vs-suspend,Fail
+kms_prop_blob@invalid-set-prop-any,Fail
+kms_properties@get_properties-sanity-atomic,Fail
+kms_properties@plane-properties-atomic,Fail
+kms_properties@plane-properties-legacy,Fail
kms_rmfb@close-fd,Fail
diff --git a/drivers/gpu/drm/ci/xfails/mediatek-mt8183-flakes.txt b/drivers/gpu/drm/ci/xfails/mediatek-mt8183-flakes.txt
new file mode 100644
index 000000000000..5885a950fa72
--- /dev/null
+++ b/drivers/gpu/drm/ci/xfails/mediatek-mt8183-flakes.txt
@@ -0,0 +1,8 @@
+# Board Name: mt8183-kukui-jacuzzi-juniper-sku16.dtb
+# Bug Report: https://lore.kernel.org/dri-devel/[email protected]/T/#u
+# IGT Version: 1.28-gd2af13d9f
+# Failure Rate: 100
+# Linux Version: 6.7.0-rc3
+
+# Reported by deqp-runner
+kms_cursor_legacy@cursor-vs-flip-atomic-transitions
--
2.40.1


2024-03-06 03:10:38

by Vignesh Raman

[permalink] [raw]
Subject: [PATCH v4 11/11] drm/ci: add tests on vkms

Add job that runs igt on top of vkms.

Signed-off-by: Vignesh Raman <[email protected]>
Acked-by: Jessica Zhang <[email protected]>
Tested-by: Jessica Zhang <[email protected]>
Acked-by: Maxime Ripard <[email protected]>
Signed-off-by: Helen Koike <[email protected]>
---

v4:
- New patch in the series.
https://lore.kernel.org/lkml/[email protected]/

---
MAINTAINERS | 2 ++
drivers/gpu/drm/ci/build.sh | 1 -
drivers/gpu/drm/ci/gitlab-ci.yml | 3 +-
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 | 33 +++++++++++++++++++
.../gpu/drm/ci/xfails/vkms-none-flakes.txt | 20 +++++++++++
drivers/gpu/drm/ci/xfails/vkms-none-skips.txt | 16 +++++++++
11 files changed, 101 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 264b23108847..c38d2555cedc 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -6964,6 +6964,8 @@ L: [email protected]
S: Maintained
T: git git://anongit.freedesktop.org/drm/drm-misc
F: Documentation/gpu/vkms.rst
+F: drivers/gpu/drm/ci/testlist.txt
+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 106f2d40d222..4342872de45f 100644
--- a/drivers/gpu/drm/ci/build.sh
+++ b/drivers/gpu/drm/ci/build.sh
@@ -155,7 +155,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 9dae74465ce1..b98e56170561 100644
--- a/drivers/gpu/drm/ci/gitlab-ci.yml
+++ b/drivers/gpu/drm/ci/gitlab-ci.yml
@@ -110,6 +110,7 @@ stages:
- panfrost
- powervr
- virtio-gpu
+ - software-driver

# YAML anchors for rule conditions
# --------------------------------
@@ -264,4 +265,4 @@ sanity:

# Jobs that need to pass before spending hardware resources on further testing
.required-for-hardware-jobs:
- needs: []
\ No newline at end of file
+ needs: []
diff --git a/drivers/gpu/drm/ci/igt_runner.sh b/drivers/gpu/drm/ci/igt_runner.sh
index 711f32772e48..81f66f1687a4 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 ac8e974723a5..f517f8ee248e 100644
--- a/drivers/gpu/drm/ci/test.yml
+++ b/drivers/gpu/drm/ci/test.yml
@@ -407,7 +407,7 @@ panfrost:g12b:
DRIVER_NAME: panfrost

virtio_gpu:none:
- stage: virtio-gpu
+ stage: software-driver
variables:
CROSVM_GALLIUM_DRIVER: llvmpipe
DRIVER_NAME: virtio_gpu
@@ -427,3 +427,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: 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@flip-vs-absolute-wf_vblank,Fail
kms_flip@flip-vs-absolute-wf_vblank-interruptible,Fail
kms_flip@flip-vs-blocking-wf-vblank,Fail
kms_flip@flip-vs-expired-vblank,Fail
-kms_flip@flip-vs-expired-vblank-interruptible,Fail
kms_flip@flip-vs-modeset-vs-hang,Fail
kms_flip@flip-vs-panning-vs-hang,Fail
kms_flip@flip-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..ef6101d2c356
--- /dev/null
+++ b/drivers/gpu/drm/ci/xfails/vkms-none-fails.txt
@@ -0,0 +1,33 @@
+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@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-modeset-vs-hang,Fail
+kms_flip@flip-vs-panning-vs-hang,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_universal_plane@universal-plane-sanity,Fail
+kms_vblank@pipe-A-ts-continuation-dpms-suspend,Fail
+kms_writeback@writeback-check-output,Fail
+kms_writeback@writeback-fb-id,Fail
+kms_writeback@writeback-invalid-parameters,Fail
+kms_writeback@writeback-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..7b52dab45457
--- /dev/null
+++ b/drivers/gpu/drm/ci/xfails/vkms-none-flakes.txt
@@ -0,0 +1,20 @@
+# Board Name: vkms
+# Bug Report: https://lore.kernel.org/dri-devel/[email protected]/T/#u
+# IGT Version: 1.28-gb0cc8160e
+# Linux Version: 6.7.0-rc3
+# Failure Rate: 50
+
+# Reported by deqp-runner
+kms_cursor_legacy@cursorA-vs-flipA-legacy
+kms_cursor_legacy@cursorA-vs-flipA-varying-size
+kms_flip@flip-vs-expired-vblank-interruptible
+kms_flip@flip-vs-expired-vblank
+kms_flip@plain-flip-fb-recreate
+kms_flip@plain-flip-fb-recreate-interruptible
+kms_flip@plain-flip-ts-check-interruptible
+
+# The below test shows inconsistency across multiple runs,
+# giving results of Pass and Fail alternately.
+kms_cursor_legacy@cursorA-vs-flipA-toggle
+kms_pipe_crc_basic@nonblocking-crc
+kms_flip@plain-flip-ts-check
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@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.*
+
+# Hangs machine and timeout occurs
+kms_flip@flip-vs-absolute-wf_vblank-interruptible
+kms_invalid_mode@zero-hdisplay
+kms_invalid_mode@bad-vtotal
+kms_cursor_crc.*
--
2.40.1


2024-03-06 03:11:07

by Vignesh Raman

[permalink] [raw]
Subject: [PATCH v4 10/11] drm/ci: rockchip: Add job to test panfrost GPU driver

For rockchip rk3288 and rk3399, the GPU driver is panfrost.
So add support in drm-ci to test panfrost driver for rockchip
SOC and update xfails. Skip KMS tests for panfrost driver
since it is not a not a KMS driver.

Signed-off-by: Vignesh Raman <[email protected]>
---

v2:
- Add panfrost GPU jobs for rockchip SOC with new xfails.

v3:
- Skip KMS tests for panfrost driver since it is not a not
a KMS driver and update xfails. Add the job name in GPU_VERSION
and use it for xfail file names instead of using DRIVER_NAME.

v4:
- Remove the gpu suffix in job and rename xfails accordingly.

---
drivers/gpu/drm/ci/test.yml | 16 ++++++++++++++++
.../gpu/drm/ci/xfails/panfrost-rk3288-fails.txt | 1 +
.../gpu/drm/ci/xfails/panfrost-rk3288-skips.txt | 2 ++
.../gpu/drm/ci/xfails/panfrost-rk3399-fails.txt | 1 +
.../gpu/drm/ci/xfails/panfrost-rk3399-skips.txt | 2 ++
5 files changed, 22 insertions(+)
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-rk3288-fails.txt
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-rk3288-skips.txt
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-rk3399-fails.txt
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-rk3399-skips.txt

diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
index 831e580e6dfd..ac8e974723a5 100644
--- a/drivers/gpu/drm/ci/test.yml
+++ b/drivers/gpu/drm/ci/test.yml
@@ -185,6 +185,14 @@ rockchip:rk3288:
GPU_VERSION: rk3288
DRIVER_NAME: rockchip

+panfrost:rk3288:
+ extends:
+ - .rk3288
+ stage: panfrost
+ variables:
+ GPU_VERSION: rk3288
+ DRIVER_NAME: panfrost
+
rockchip:rk3399:
extends:
- .rk3399
@@ -192,6 +200,14 @@ rockchip:rk3399:
GPU_VERSION: rk3399
DRIVER_NAME: rockchip

+panfrost:rk3399:
+ extends:
+ - .rk3399
+ stage: panfrost
+ variables:
+ GPU_VERSION: rk3399
+ DRIVER_NAME: panfrost
+
.i915:
extends:
- .lava-igt:x86_64
diff --git a/drivers/gpu/drm/ci/xfails/panfrost-rk3288-fails.txt b/drivers/gpu/drm/ci/xfails/panfrost-rk3288-fails.txt
new file mode 100644
index 000000000000..abd35a8ef6f4
--- /dev/null
+++ b/drivers/gpu/drm/ci/xfails/panfrost-rk3288-fails.txt
@@ -0,0 +1 @@
+panfrost_prime@gem-prime-import,Crash
diff --git a/drivers/gpu/drm/ci/xfails/panfrost-rk3288-skips.txt b/drivers/gpu/drm/ci/xfails/panfrost-rk3288-skips.txt
new file mode 100644
index 000000000000..2ea09d1648bc
--- /dev/null
+++ b/drivers/gpu/drm/ci/xfails/panfrost-rk3288-skips.txt
@@ -0,0 +1,2 @@
+# Panfrost is not a KMS driver, so skip the KMS tests
+kms_.*
diff --git a/drivers/gpu/drm/ci/xfails/panfrost-rk3399-fails.txt b/drivers/gpu/drm/ci/xfails/panfrost-rk3399-fails.txt
new file mode 100644
index 000000000000..6f5e760d5ec0
--- /dev/null
+++ b/drivers/gpu/drm/ci/xfails/panfrost-rk3399-fails.txt
@@ -0,0 +1 @@
+panfrost_prime@gem-prime-import,Fail
diff --git a/drivers/gpu/drm/ci/xfails/panfrost-rk3399-skips.txt b/drivers/gpu/drm/ci/xfails/panfrost-rk3399-skips.txt
new file mode 100644
index 000000000000..2ea09d1648bc
--- /dev/null
+++ b/drivers/gpu/drm/ci/xfails/panfrost-rk3399-skips.txt
@@ -0,0 +1,2 @@
+# Panfrost is not a KMS driver, so skip the KMS tests
+kms_.*
--
2.40.1


2024-03-06 03:19:54

by Vignesh Raman

[permalink] [raw]
Subject: [PATCH v4 04/11] drm/ci: amdgpu: update xfails

Update xfails with the newly added tests in testlist-amdgpu.txt.

Signed-off-by: Vignesh Raman <[email protected]>
---

v4:
- New patch in the series. Run tests with newly added tests in
testlist-amdgpu.txt and update xfails.

---
.../gpu/drm/ci/xfails/amdgpu-stoney-fails.txt | 26 +++++++++++++++++--
.../drm/ci/xfails/amdgpu-stoney-flakes.txt | 10 ++++++-
.../gpu/drm/ci/xfails/amdgpu-stoney-skips.txt | 17 +++++++++++-
3 files changed, 49 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/ci/xfails/amdgpu-stoney-fails.txt b/drivers/gpu/drm/ci/xfails/amdgpu-stoney-fails.txt
index ea87dc46bc2b..537f942f54c4 100644
--- a/drivers/gpu/drm/ci/xfails/amdgpu-stoney-fails.txt
+++ b/drivers/gpu/drm/ci/xfails/amdgpu-stoney-fails.txt
@@ -1,7 +1,24 @@
+amdgpu/amd_assr@assr-links,Fail
+amdgpu/amd_assr@assr-links-dpms,Fail
+amdgpu/amd_deadlock@amdgpu-deadlock-compute,Timeout
+amdgpu/amd_ilr@ilr-policy,Fail
+amdgpu/amd_mall@static-screen,Crash
+amdgpu/amd_mode_switch@mode-switch-first-last-pipe-2,Crash
+amdgpu/amd_pci_unplug@amdgpu_hotunplug_with_exported_bo,Fail
+amdgpu/amd_plane@mpo-pan-nv12,Fail
+amdgpu/amd_plane@mpo-pan-p010,Fail
+amdgpu/amd_plane@mpo-pan-rgb,Crash
+amdgpu/amd_plane@mpo-scale-nv12,Fail
+amdgpu/amd_plane@mpo-scale-p010,Fail
+amdgpu/amd_plane@mpo-scale-rgb,Crash
+amdgpu/amd_plane@mpo-swizzle-toggle,Fail
+amdgpu/amd_uvd_dec@amdgpu_uvd_decode,Fail
+amdgpu/amd_vce_dec@amdgpu_cs_vce_destroy,Fail
+amdgpu/amd_vce_dec@amdgpu_cs_vce_encode,Fail
+amdgpu/amd_vrr_range@freesync-parsing,Timeout
kms_addfb_basic@bad-pitch-65536,Fail
kms_addfb_basic@bo-too-small,Fail
kms_addfb_basic@too-high,Fail
-kms_async_flips@async-flip-with-page-flip-events,Fail
kms_async_flips@crc,Fail
kms_async_flips@invalid-async-flip,Fail
kms_atomic_transition@plane-all-modeset-transition-internal-panels,Fail
@@ -14,7 +31,13 @@ kms_bw@linear-tiling-1-displays-3840x2160p,Fail
kms_bw@linear-tiling-2-displays-3840x2160p,Fail
kms_bw@linear-tiling-3-displays-1920x1080p,Fail
kms_color@degamma,Fail
+kms_cursor_crc@cursor-onscreen-64x21,Fail
+kms_cursor_crc@cursor-onscreen-64x64,Fail
+kms_cursor_crc@cursor-random-64x21,Fail
+kms_cursor_crc@cursor-random-64x64,Fail
kms_cursor_crc@cursor-size-change,Fail
+kms_cursor_crc@cursor-sliding-64x21,Fail
+kms_cursor_crc@cursor-sliding-64x64,Fail
kms_cursor_crc@pipe-A-cursor-size-change,Fail
kms_cursor_crc@pipe-B-cursor-size-change,Fail
kms_flip@flip-vs-modeset-vs-hang,Fail
@@ -23,5 +46,4 @@ kms_hdr@bpc-switch,Fail
kms_hdr@bpc-switch-dpms,Fail
kms_plane@pixel-format,Fail
kms_plane_multiple@atomic-pipe-A-tiling-none,Fail
-kms_rmfb@close-fd,Fail
kms_rotation_crc@primary-rotation-180,Fail
diff --git a/drivers/gpu/drm/ci/xfails/amdgpu-stoney-flakes.txt b/drivers/gpu/drm/ci/xfails/amdgpu-stoney-flakes.txt
index 6faf75e667d3..c5085c5571eb 100644
--- a/drivers/gpu/drm/ci/xfails/amdgpu-stoney-flakes.txt
+++ b/drivers/gpu/drm/ci/xfails/amdgpu-stoney-flakes.txt
@@ -1 +1,9 @@
-kms_async_flips@async-flip-with-page-flip-events
+# Board Name: hp-11A-G6-EE-grunt
+# Bug Report: https://lore.kernel.org/dri-devel/[email protected]/T/#u
+# IGT Version: 1.28-gb0cc8160e
+# Linux Version: 6.7.0-rc3
+
+# Reported by deqp-runner
+kms_async_flips@crc
+amdgpu/amd_pci_unplug@amdgpu_hotunplug_simple
+amdgpu/amd_pci_unplug@amdgpu_hotunplug_with_exported_bo
diff --git a/drivers/gpu/drm/ci/xfails/amdgpu-stoney-skips.txt b/drivers/gpu/drm/ci/xfails/amdgpu-stoney-skips.txt
index e2c538a0f954..8420906f6cd5 100644
--- a/drivers/gpu/drm/ci/xfails/amdgpu-stoney-skips.txt
+++ b/drivers/gpu/drm/ci/xfails/amdgpu-stoney-skips.txt
@@ -1,2 +1,17 @@
# Suspend to RAM seems to be broken on this machine
-.*suspend.*
\ No newline at end of file
+.*suspend.*
+
+# GPU reset seen and it hangs the machine
+amdgpu/amd_deadlock@amdgpu-deadlock-sdma
+amdgpu/amd_deadlock@amdgpu-gfx-illegal-reg-access
+amdgpu/amd_dispatch@amdgpu-reset-test-gfx-with-IP-GFX-and-COMPUTE
+
+# Hangs the machine and timeout occurs
+amdgpu/amd_pci_unplug@amdgpu_hotunplug_simple
+amdgpu/amd_pci_unplug@amdgpu_hotunplug_with_cs
+amdgpu/amd_pci_unplug@amdgpu_hotunplug_with_exported_bo
+amdgpu/amd_pci_unplug@amdgpu_hotunplug_with_exported_fence
+
+# Skip this test as core_getrevision fails with
+# Module amdgpu already inserted
+amdgpu/amd_module_load@reload
--
2.40.1


2024-03-06 03:23:42

by Vignesh Raman

[permalink] [raw]
Subject: [PATCH v4 07/11] drm/ci: meson: Refactor existing meson jobs

For Amlogic Meson SOC the display driver is meson. Currently,
in drm-ci for meson, only the display driver is tested.
Refactor the existing meson jobs so that gpu driver testing
jobs can be added later and update xfails accordingly.

Signed-off-by: Vignesh Raman <[email protected]>
---

v2:
- Refactor the patch to rename job to indicate display driver testing,
rename the existing xfail files.

v3:
- Add the job name in GPU_VERSION and use it for xfail file names instead
of using DRIVER_NAME.

v4:
- Remove the display suffix in job and rename xfails accordingly.
Remove the change adding job name in GPU_VERSION.

---
drivers/gpu/drm/ci/test.yml | 11 ++++++++---
drivers/gpu/drm/ci/xfails/meson-g12b-fails.txt | 5 -----
2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
index 99fd101ce2fe..951a44bf9d19 100644
--- a/drivers/gpu/drm/ci/test.yml
+++ b/drivers/gpu/drm/ci/test.yml
@@ -351,20 +351,25 @@ panfrost:mt8183:
- .lava-igt:arm64
stage: meson
variables:
- DRIVER_NAME: meson
DTB: ${DEVICE_TYPE}
BOOT_METHOD: u-boot
KERNEL_IMAGE_TYPE: "image"

-meson:g12b:
+.g12b:
extends:
- .meson
parallel: 3
variables:
DEVICE_TYPE: meson-g12b-a311d-khadas-vim3
- GPU_VERSION: g12b
RUNNER_TAG: mesa-ci-x86-64-lava-meson-g12b-a311d-khadas-vim3

+meson:g12b:
+ extends:
+ - .g12b
+ variables:
+ GPU_VERSION: g12b
+ DRIVER_NAME: meson
+
virtio_gpu:none:
stage: virtio-gpu
variables:
diff --git a/drivers/gpu/drm/ci/xfails/meson-g12b-fails.txt b/drivers/gpu/drm/ci/xfails/meson-g12b-fails.txt
index 56a2ae7047b4..029b4ade21f6 100644
--- a/drivers/gpu/drm/ci/xfails/meson-g12b-fails.txt
+++ b/drivers/gpu/drm/ci/xfails/meson-g12b-fails.txt
@@ -5,11 +5,6 @@ kms_cursor_legacy@single-bo,Fail
kms_cursor_legacy@single-move,Fail
kms_cursor_legacy@torture-bo,Fail
kms_cursor_legacy@torture-move,Fail
-kms_force_connector_basic@force-edid,Fail
-kms_hdmi_inject@inject-4k,Fail
-kms_plane_cursor@overlay,Fail
-kms_plane_cursor@primary,Fail
-kms_plane_cursor@viewport,Fail
kms_properties@connector-properties-atomic,Fail
kms_properties@connector-properties-legacy,Fail
kms_properties@get_properties-sanity-atomic,Fail
--
2.40.1


2024-03-06 03:23:55

by Vignesh Raman

[permalink] [raw]
Subject: [PATCH v4 08/11] drm/ci: meson: Add job to test panfrost GPU driver

For amlogic meson SOC the GPU driver is panfrost. So add
support in drm-ci to test panfrost driver for amlogic meson
SOC and update xfails. Skip KMS tests for panfrost driver
since it is not a not a KMS driver.

Signed-off-by: Vignesh Raman <[email protected]>
---

v2:
- Add panfrost GPU jobs for amlogic meson SOC with new xfails.

v3:
- Skip KMS tests for panfrost driver since it is not a not a KMS
driver and update xfails. Add the job name in GPU_VERSION and use
it for xfail file names instead of using DRIVER_NAME.

v4:
- Remove the gpu suffix in job and rename xfails accordingly.

---
drivers/gpu/drm/ci/test.yml | 8 ++++++++
drivers/gpu/drm/ci/xfails/panfrost-g12b-fails.txt | 1 +
drivers/gpu/drm/ci/xfails/panfrost-g12b-skips.txt | 2 ++
3 files changed, 11 insertions(+)
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-g12b-fails.txt
create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-g12b-skips.txt

diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
index 951a44bf9d19..6ae6398b3d88 100644
--- a/drivers/gpu/drm/ci/test.yml
+++ b/drivers/gpu/drm/ci/test.yml
@@ -370,6 +370,14 @@ meson:g12b:
GPU_VERSION: g12b
DRIVER_NAME: meson

+panfrost:g12b:
+ extends:
+ - .g12b
+ stage: panfrost
+ variables:
+ GPU_VERSION: g12b
+ DRIVER_NAME: panfrost
+
virtio_gpu:none:
stage: virtio-gpu
variables:
diff --git a/drivers/gpu/drm/ci/xfails/panfrost-g12b-fails.txt b/drivers/gpu/drm/ci/xfails/panfrost-g12b-fails.txt
new file mode 100644
index 000000000000..6f5e760d5ec0
--- /dev/null
+++ b/drivers/gpu/drm/ci/xfails/panfrost-g12b-fails.txt
@@ -0,0 +1 @@
+panfrost_prime@gem-prime-import,Fail
diff --git a/drivers/gpu/drm/ci/xfails/panfrost-g12b-skips.txt b/drivers/gpu/drm/ci/xfails/panfrost-g12b-skips.txt
new file mode 100644
index 000000000000..2ea09d1648bc
--- /dev/null
+++ b/drivers/gpu/drm/ci/xfails/panfrost-g12b-skips.txt
@@ -0,0 +1,2 @@
+# Panfrost is not a KMS driver, so skip the KMS tests
+kms_.*
--
2.40.1


2024-03-07 13:37:53

by Helen Koike

[permalink] [raw]
Subject: Re: [PATCH v4 02/11] drm/ci: uprev mesa version



On 06/03/2024 00:06, Vignesh Raman wrote:
> zlib.net is not allowing tarball download anymore and results
> in below error in kernel+rootfs_arm32 container build,
> urllib.error.HTTPError: HTTP Error 403: Forbidden
> urllib.error.HTTPError: HTTP Error 415: Unsupported Media Type
>
> Uprev mesa which includes a fix for this issue.
> https://gitlab.freedesktop.org/mesa/mesa/-/commit/908f444e
>
> Signed-off-by: Vignesh Raman <[email protected]>

Acked-by: Helen Koike <[email protected]>

Thanks
Helen

> ---
>
> v3:
> - New patch in series to uprev mesa.
>
> v4:
> - Fix checkpatch warning.
>
> ---
> drivers/gpu/drm/ci/container.yml | 6 +++---
> drivers/gpu/drm/ci/gitlab-ci.yml | 6 +++---
> drivers/gpu/drm/ci/image-tags.yml | 3 ++-
> 3 files changed, 8 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/ci/container.yml b/drivers/gpu/drm/ci/container.yml
> index 9764e7921a4f..1060eb380b02 100644
> --- a/drivers/gpu/drm/ci/container.yml
> +++ b/drivers/gpu/drm/ci/container.yml
> @@ -40,11 +40,11 @@ debian/x86_64_test-android:
> rules:
> - when: never
>
> -windows_build_vs2019:
> +windows_build_msvc:
> rules:
> - when: never
>
> -windows_test_vs2019:
> +windows_test_msvc:
> rules:
> - when: never
>
> @@ -56,7 +56,7 @@ rustfmt:
> rules:
> - when: never
>
> -windows_vs2019:
> +windows_msvc:
> rules:
> - when: never
>
> diff --git a/drivers/gpu/drm/ci/gitlab-ci.yml b/drivers/gpu/drm/ci/gitlab-ci.yml
> index 084e3ff8e3f4..bc8cb3420476 100644
> --- a/drivers/gpu/drm/ci/gitlab-ci.yml
> +++ b/drivers/gpu/drm/ci/gitlab-ci.yml
> @@ -1,6 +1,6 @@
> variables:
> DRM_CI_PROJECT_PATH: &drm-ci-project-path mesa/mesa
> - DRM_CI_COMMIT_SHA: &drm-ci-commit-sha 9d162de9a05155e1c4041857a5848842749164cf
> + DRM_CI_COMMIT_SHA: &drm-ci-commit-sha c4b32f9e90b7204735e6adf1f60c178bf85752e7
>
> UPSTREAM_REPO: git://anongit.freedesktop.org/drm/drm
> TARGET_BRANCH: drm-next
> @@ -26,7 +26,7 @@ variables:
> JOB_ARTIFACTS_BASE: ${PIPELINE_ARTIFACTS_BASE}/${CI_JOB_ID}
> # default kernel for rootfs before injecting the current kernel tree
> KERNEL_REPO: "gfx-ci/linux"
> - KERNEL_TAG: "v6.6.4-for-mesa-ci-e4f4c500f7fb"
> + KERNEL_TAG: "v6.6.13-mesa-9916"
> KERNEL_IMAGE_BASE: https://${S3_HOST}/mesa-lava/${KERNEL_REPO}/${KERNEL_TAG}
> LAVA_TAGS: subset-1-gfx
> LAVA_JOB_PRIORITY: 30
> @@ -98,6 +98,7 @@ include:
> stages:
> - sanity
> - container
> + - code-validation
> - git-archive
> - build
> - amdgpu
> @@ -107,7 +108,6 @@ stages:
> - msm
> - rockchip
> - virtio-gpu
> - - lint
>
> # YAML anchors for rule conditions
> # --------------------------------
> diff --git a/drivers/gpu/drm/ci/image-tags.yml b/drivers/gpu/drm/ci/image-tags.yml
> index 7ab4f2514da8..cf07c3e09b8c 100644
> --- a/drivers/gpu/drm/ci/image-tags.yml
> +++ b/drivers/gpu/drm/ci/image-tags.yml
> @@ -1,5 +1,5 @@
> variables:
> - CONTAINER_TAG: "2023-10-11-mesa-uprev"
> + CONTAINER_TAG: "2022-01-29-mesa-uprev"
> DEBIAN_X86_64_BUILD_BASE_IMAGE: "debian/x86_64_build-base"
> DEBIAN_BASE_TAG: "${CONTAINER_TAG}"
>
> @@ -7,6 +7,7 @@ variables:
> DEBIAN_BUILD_TAG: "2023-10-08-config"
>
> KERNEL_ROOTFS_TAG: "2023-10-06-amd"
> + PKG_REPO_REV: "67f2c46b"
>
> DEBIAN_X86_64_TEST_BASE_IMAGE: "debian/x86_64_test-base"
> DEBIAN_X86_64_TEST_IMAGE_GL_PATH: "debian/x86_64_test-gl"

2024-03-07 14:02:54

by Helen Koike

[permalink] [raw]
Subject: Re: [PATCH v4 07/11] drm/ci: meson: Refactor existing meson jobs



On 06/03/2024 00:06, Vignesh Raman wrote:
> For Amlogic Meson SOC the display driver is meson. Currently,
> in drm-ci for meson, only the display driver is tested.
> Refactor the existing meson jobs so that gpu driver testing
> jobs can be added later and update xfails accordingly.
>
> Signed-off-by: Vignesh Raman <[email protected]>
> ---
>
> v2:
> - Refactor the patch to rename job to indicate display driver testing,
> rename the existing xfail files.
>
> v3:
> - Add the job name in GPU_VERSION and use it for xfail file names instead
> of using DRIVER_NAME.
>
> v4:
> - Remove the display suffix in job and rename xfails accordingly.
> Remove the change adding job name in GPU_VERSION.
>
> ---
> drivers/gpu/drm/ci/test.yml | 11 ++++++++---
> drivers/gpu/drm/ci/xfails/meson-g12b-fails.txt | 5 -----
> 2 files changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
> index 99fd101ce2fe..951a44bf9d19 100644
> --- a/drivers/gpu/drm/ci/test.yml
> +++ b/drivers/gpu/drm/ci/test.yml
> @@ -351,20 +351,25 @@ panfrost:mt8183:
> - .lava-igt:arm64
> stage: meson
> variables:
> - DRIVER_NAME: meson
> DTB: ${DEVICE_TYPE}
> BOOT_METHOD: u-boot
> KERNEL_IMAGE_TYPE: "image"
>
> -meson:g12b:
> +.g12b:
> extends:
> - .meson
> parallel: 3
> variables:
> DEVICE_TYPE: meson-g12b-a311d-khadas-vim3
> - GPU_VERSION: g12b

Looks like it make sense to keep GPU_VERSION here, no?

Regards,
Helen

> RUNNER_TAG: mesa-ci-x86-64-lava-meson-g12b-a311d-khadas-vim3
>
> +meson:g12b:
> + extends:
> + - .g12b
> + variables:
> + GPU_VERSION: g12b
> + DRIVER_NAME: meson
> +
> virtio_gpu:none:
> stage: virtio-gpu
> variables:
> diff --git a/drivers/gpu/drm/ci/xfails/meson-g12b-fails.txt b/drivers/gpu/drm/ci/xfails/meson-g12b-fails.txt
> index 56a2ae7047b4..029b4ade21f6 100644
> --- a/drivers/gpu/drm/ci/xfails/meson-g12b-fails.txt
> +++ b/drivers/gpu/drm/ci/xfails/meson-g12b-fails.txt
> @@ -5,11 +5,6 @@ kms_cursor_legacy@single-bo,Fail
> kms_cursor_legacy@single-move,Fail
> kms_cursor_legacy@torture-bo,Fail
> kms_cursor_legacy@torture-move,Fail
> -kms_force_connector_basic@force-edid,Fail
> -kms_hdmi_inject@inject-4k,Fail
> -kms_plane_cursor@overlay,Fail
> -kms_plane_cursor@primary,Fail
> -kms_plane_cursor@viewport,Fail
> kms_properties@connector-properties-atomic,Fail
> kms_properties@connector-properties-legacy,Fail
> kms_properties@get_properties-sanity-atomic,Fail

2024-03-07 14:04:00

by Helen Koike

[permalink] [raw]
Subject: Re: [PATCH v4 00/11] drm/ci: Add support for GPU and display testing



On 06/03/2024 00:06, Vignesh Raman wrote:
> Some ARM SOCs have a separate display controller and GPU, each with
> different drivers. For mediatek mt8173, the GPU driver is powervr,
> and the display driver is mediatek. In the case of mediatek mt8183,
> the GPU driver is panfrost, and the display driver is mediatek.
> With rockchip rk3288/rk3399, the GPU driver is panfrost, while the
> display driver is rockchip. For amlogic meson, the GPU driver is
> panfrost, and the display driver is meson.
>
> IGT tests run various tests with different xfails and can test both
> GPU devices and KMS/display devices. Currently, in drm-ci for MediaTek,
> Rockchip, and Amlogic Meson platforms, only the GPU driver is tested.
> This leads to incomplete coverage since the display is never tested on
> these platforms. This commit series adds support in drm-ci to run tests
> for both GPU and display drivers for MediaTek, Rockchip, and Amlogic
> Meson platforms.
>
> Uprev mesa and IGT in drm-ci and add amd, v3d, vc4 and vgem specific
> tests to testlist. Have testlist.txt per driver and include a base
> testlist so that the driver specific tests will run only on those hardware
> and add testlists to the MAINTAINERS file.
>
> This series also includes patch to add vkms testing to drm-ci.
>
> Working pipeline link,
> https://gitlab.freedesktop.org/vigneshraman/linux/-/pipelines/1119859

Hi Vignesh, thanks for this patchset.

Just to confirm, the new convention is:

stages are named per DRIVER_NAME

jobs are named DRIVER_NAME:GPU_VERSION

xfails files and testlist files are named DRIVER_NAME-<xfails-suffix>.txt

Looks good.

I just have some minor comments/questions in the series, please check.

Regards,
Helen

>
> Vignesh Raman (11):
> drm/ci: arm64.config: Enable CONFIG_DRM_ANALOGIX_ANX7625
> drm/ci: uprev mesa version
> drm/ci: uprev IGT and update testlist
> drm/ci: amdgpu: update xfails
> drm/ci: mediatek: Refactor existing mediatek jobs
> drm/ci: mediatek: Add job to test panfrost and powervr GPU driver
> drm/ci: meson: Refactor existing meson jobs
> drm/ci: meson: Add job to test panfrost GPU driver
> drm/ci: rockchip: Refactor existing rockchip jobs
> drm/ci: rockchip: Add job to test panfrost GPU driver
> drm/ci: add tests on vkms
>
> MAINTAINERS | 14 ++
> drivers/gpu/drm/ci/arm64.config | 1 +
> drivers/gpu/drm/ci/build.sh | 1 -
> drivers/gpu/drm/ci/container.yml | 6 +-
> drivers/gpu/drm/ci/gitlab-ci.yml | 13 +-
> drivers/gpu/drm/ci/igt_runner.sh | 28 ++--
> drivers/gpu/drm/ci/image-tags.yml | 5 +-
> drivers/gpu/drm/ci/test.yml | 136 +++++++++++++---
> drivers/gpu/drm/ci/testlist-amdgpu.txt | 151 ++++++++++++++++++
> drivers/gpu/drm/ci/testlist-msm.txt | 50 ++++++
> drivers/gpu/drm/ci/testlist-panfrost.txt | 17 ++
> drivers/gpu/drm/ci/testlist-v3d.txt | 73 +++++++++
> drivers/gpu/drm/ci/testlist-vc4.txt | 49 ++++++
> drivers/gpu/drm/ci/testlist.txt | 84 ++++------
> drivers/gpu/drm/ci/x86_64.config | 1 +
> .../gpu/drm/ci/xfails/amdgpu-stoney-fails.txt | 26 ++-
> .../drm/ci/xfails/amdgpu-stoney-flakes.txt | 10 +-
> .../gpu/drm/ci/xfails/amdgpu-stoney-skips.txt | 17 +-
> .../drm/ci/xfails/mediatek-mt8173-fails.txt | 15 --
> .../drm/ci/xfails/mediatek-mt8173-flakes.txt | 13 ++
> .../drm/ci/xfails/mediatek-mt8183-fails.txt | 21 ++-
> .../drm/ci/xfails/mediatek-mt8183-flakes.txt | 8 +
> .../gpu/drm/ci/xfails/meson-g12b-fails.txt | 5 -
> .../gpu/drm/ci/xfails/panfrost-g12b-fails.txt | 1 +
> .../gpu/drm/ci/xfails/panfrost-g12b-skips.txt | 2 +
> .../drm/ci/xfails/panfrost-mt8183-fails.txt | 1 +
> .../drm/ci/xfails/panfrost-mt8183-skips.txt | 2 +
> .../drm/ci/xfails/panfrost-rk3288-fails.txt | 1 +
> .../drm/ci/xfails/panfrost-rk3288-skips.txt | 2 +
> .../drm/ci/xfails/panfrost-rk3399-fails.txt | 1 +
> .../drm/ci/xfails/panfrost-rk3399-skips.txt | 2 +
> .../drm/ci/xfails/rockchip-rk3288-fails.txt | 58 ++-----
> .../drm/ci/xfails/rockchip-rk3288-flakes.txt | 20 +++
> .../drm/ci/xfails/rockchip-rk3288-skips.txt | 54 +------
> .../drm/ci/xfails/rockchip-rk3399-fails.txt | 38 +++--
> .../drm/ci/xfails/rockchip-rk3399-flakes.txt | 28 +++-
> .../drm/ci/xfails/rockchip-rk3399-skips.txt | 5 +-
> .../drm/ci/xfails/virtio_gpu-none-fails.txt | 1 -
> drivers/gpu/drm/ci/xfails/vkms-none-fails.txt | 33 ++++
> .../gpu/drm/ci/xfails/vkms-none-flakes.txt | 20 +++
> drivers/gpu/drm/ci/xfails/vkms-none-skips.txt | 16 ++
> 41 files changed, 784 insertions(+), 245 deletions(-)
> create mode 100644 drivers/gpu/drm/ci/testlist-amdgpu.txt
> create mode 100644 drivers/gpu/drm/ci/testlist-msm.txt
> create mode 100644 drivers/gpu/drm/ci/testlist-panfrost.txt
> create mode 100644 drivers/gpu/drm/ci/testlist-v3d.txt
> create mode 100644 drivers/gpu/drm/ci/testlist-vc4.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/mediatek-mt8173-flakes.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/mediatek-mt8183-flakes.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-g12b-fails.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-g12b-skips.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-mt8183-fails.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-mt8183-skips.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-rk3288-fails.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-rk3288-skips.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-rk3399-fails.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/panfrost-rk3399-skips.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/rockchip-rk3288-flakes.txt
> 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
>

2024-03-07 14:22:24

by Helen Koike

[permalink] [raw]
Subject: Re: [PATCH v4 05/11] drm/ci: mediatek: Refactor existing mediatek jobs



On 06/03/2024 00:06, Vignesh Raman wrote:
> For mediatek mt8173 and mt8183, the display driver is mediatek.
> Currently, in drm-ci for mediatek, only the display driver is
> tested. Refactor the existing mediatek jobs so that gpu driver
> testing jobs can be added later and update xfails accordingly.
> Since the correct driver name is passed from the job to test gpu
> and display driver, remove the check to set IGT_FORCE_DRIVER
> based on driver name.
>
> Signed-off-by: Vignesh Raman <[email protected]>
> ---
>
> v2:
> - Refactor the patch to rename job to indicate display driver testing,
> rename the existing xfail files, and remove IGT_FORCE_DRIVER from the
> script since it's now set by the job.
>
> v3:
> - Add the job name in GPU_VERSION and use it for xfail file names instead
> of using DRIVER_NAME. Also update xfails.
>
> v4:
> - Remove the display suffix in job and rename xfails accordingly.
> Remove the change adding job name in GPU_VERSION.
>
> ---
> drivers/gpu/drm/ci/igt_runner.sh | 10 ---------
> drivers/gpu/drm/ci/test.yml | 21 ++++++++++++++-----
> .../drm/ci/xfails/mediatek-mt8173-fails.txt | 15 -------------
> .../drm/ci/xfails/mediatek-mt8173-flakes.txt | 13 ++++++++++++
> .../drm/ci/xfails/mediatek-mt8183-fails.txt | 21 ++++++++++++-------
> .../drm/ci/xfails/mediatek-mt8183-flakes.txt | 8 +++++++
> 6 files changed, 50 insertions(+), 38 deletions(-)
> create mode 100644 drivers/gpu/drm/ci/xfails/mediatek-mt8173-flakes.txt
> create mode 100644 drivers/gpu/drm/ci/xfails/mediatek-mt8183-flakes.txt
>
> diff --git a/drivers/gpu/drm/ci/igt_runner.sh b/drivers/gpu/drm/ci/igt_runner.sh
> index 77cd81fe6d1a..711f32772e48 100755
> --- a/drivers/gpu/drm/ci/igt_runner.sh
> +++ b/drivers/gpu/drm/ci/igt_runner.sh
> @@ -20,16 +20,6 @@ cat /sys/kernel/debug/dri/*/state
> set -e
>
> case "$DRIVER_NAME" in
> - rockchip|meson)
> - export IGT_FORCE_DRIVER="panfrost"
> - ;;
> - mediatek)
> - if [ "$GPU_VERSION" = "mt8173" ]; then
> - export IGT_FORCE_DRIVER=${DRIVER_NAME}
> - elif [ "$GPU_VERSION" = "mt8183" ]; then
> - export IGT_FORCE_DRIVER="panfrost"
> - fi
> - ;;
> amdgpu)
> # Cannot use HWCI_KERNEL_MODULES as at that point we don't have the module in /lib
> mv /install/modules/lib/modules/* /lib/modules/.
> diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
> index 0857773e5c5f..f8f48523ada3 100644
> --- a/drivers/gpu/drm/ci/test.yml
> +++ b/drivers/gpu/drm/ci/test.yml
> @@ -282,29 +282,40 @@ amdgpu:stoney:
> - .lava-igt:arm64
> stage: mediatek
> variables:
> - DRIVER_NAME: mediatek
> DTB: ${DEVICE_TYPE}
> BOOT_METHOD: depthcharge
> KERNEL_IMAGE_TYPE: ""
>
> -mediatek:mt8173:
> +.mt8173:
> extends:
> - .mediatek
> parallel: 4
> variables:
> DEVICE_TYPE: mt8173-elm-hana
> - GPU_VERSION: mt8173

Looks like it make sense to keep GPU_VERSION here, no?
Same comment for .mt8183.

Regards,
Helen

> RUNNER_TAG: mesa-ci-x86-64-lava-mt8173-elm-hana
>
> -mediatek:mt8183:
> +.mt8183:
> extends:
> - .mediatek
> parallel: 3
> variables:
> DEVICE_TYPE: mt8183-kukui-jacuzzi-juniper-sku16
> - GPU_VERSION: mt8183
> RUNNER_TAG: mesa-ci-x86-64-lava-mt8183-kukui-jacuzzi-juniper-sku16
>
> +mediatek:mt8173:
> + extends:
> + - .mt8173
> + variables:
> + GPU_VERSION: mt8173
> + DRIVER_NAME: mediatek
> +
> +mediatek:mt8183:
> + extends:
> + - .mt8183
> + variables:
> + GPU_VERSION: mt8183
> + DRIVER_NAME: mediatek
> +
> # drm-mtk doesn't even probe yet in mainline for mt8192
> .mediatek:mt8192:
> extends:
> diff --git a/drivers/gpu/drm/ci/xfails/mediatek-mt8173-fails.txt b/drivers/gpu/drm/ci/xfails/mediatek-mt8173-fails.txt
> index ef0cb7c3698c..c63abd603b02 100644
> --- a/drivers/gpu/drm/ci/xfails/mediatek-mt8173-fails.txt
> +++ b/drivers/gpu/drm/ci/xfails/mediatek-mt8173-fails.txt
> @@ -9,28 +9,13 @@ kms_bw@linear-tiling-3-displays-1920x1080p,Fail
> kms_bw@linear-tiling-3-displays-2560x1440p,Fail
> kms_bw@linear-tiling-3-displays-3840x2160p,Fail
> kms_color@invalid-gamma-lut-sizes,Fail
> -kms_color@pipe-A-invalid-gamma-lut-sizes,Fail
> -kms_color@pipe-B-invalid-gamma-lut-sizes,Fail
> kms_cursor_legacy@cursor-vs-flip-atomic,Fail
> kms_cursor_legacy@cursor-vs-flip-legacy,Fail
> kms_flip@flip-vs-modeset-vs-hang,Fail
> kms_flip@flip-vs-panning-vs-hang,Fail
> kms_flip@flip-vs-suspend,Fail
> kms_flip@flip-vs-suspend-interruptible,Fail
> -kms_force_connector_basic@force-edid,Fail
> -kms_force_connector_basic@force-load-detect,Fail
> -kms_force_connector_basic@prune-stale-modes,Fail
> -kms_hdmi_inject@inject-4k,Fail
> -kms_plane_scaling@planes-upscale-20x20,Fail
> -kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25,Fail
> -kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5,Fail
> -kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-75,Fail
> -kms_plane_scaling@upscale-with-modifier-20x20,Fail
> -kms_plane_scaling@upscale-with-pixel-format-20x20,Fail
> -kms_plane_scaling@upscale-with-rotation-20x20,Fail
> kms_properties@get_properties-sanity-atomic,Fail
> kms_properties@plane-properties-atomic,Fail
> kms_properties@plane-properties-legacy,Fail
> kms_rmfb@close-fd,Fail
> -kms_selftest@drm_format,Timeout
> -kms_selftest@drm_format_helper,Timeout
> diff --git a/drivers/gpu/drm/ci/xfails/mediatek-mt8173-flakes.txt b/drivers/gpu/drm/ci/xfails/mediatek-mt8173-flakes.txt
> new file mode 100644
> index 000000000000..64b30c092c85
> --- /dev/null
> +++ b/drivers/gpu/drm/ci/xfails/mediatek-mt8173-flakes.txt
> @@ -0,0 +1,13 @@
> +# Board Name: mt8173-elm-hana.dtb
> +# Bug Report: https://lore.kernel.org/dri-devel/[email protected]/T/#u
> +# IGT Version: 1.28-gd2af13d9f
> +# Failure Rate: 50
> +# Linux Version: 6.7.0-rc3
> +
> +# Reported by deqp-runner
> +kms_cursor_legacy@cursor-vs-flip-atomic-transitions
> +
> +# Below test shows inconsistency across multiple runs,
> +# giving results of Pass and Timeout/Fail alternately
> +kms_prop_blob@invalid-set-prop
> +kms_prop_blob@invalid-set-prop-any
> diff --git a/drivers/gpu/drm/ci/xfails/mediatek-mt8183-fails.txt b/drivers/gpu/drm/ci/xfails/mediatek-mt8183-fails.txt
> index 67d690fc4037..28c825c9cd60 100644
> --- a/drivers/gpu/drm/ci/xfails/mediatek-mt8183-fails.txt
> +++ b/drivers/gpu/drm/ci/xfails/mediatek-mt8183-fails.txt
> @@ -1,13 +1,18 @@
> -kms_addfb_basic@addfb25-bad-modifier,Fail
> +core_setmaster_vs_auth,Fail
> +kms_bw@linear-tiling-1-displays-1920x1080p,Fail
> kms_bw@linear-tiling-1-displays-2560x1440p,Fail
> +kms_bw@linear-tiling-1-displays-3840x2160p,Fail
> kms_bw@linear-tiling-2-displays-1920x1080p,Fail
> kms_bw@linear-tiling-2-displays-2560x1440p,Fail
> kms_bw@linear-tiling-2-displays-3840x2160p,Fail
> -kms_bw@linear-tiling-3-displays-2560x1440p,Fail
> -kms_bw@linear-tiling-3-displays-3840x2160p,Fail
> -kms_color@pipe-A-invalid-gamma-lut-sizes,Fail
> -kms_plane_cursor@overlay,Fail
> -kms_plane_cursor@primary,Fail
> -kms_plane_cursor@viewport,Fail
> -kms_plane_scaling@upscale-with-rotation-20x20,Fail
> +kms_color@invalid-gamma-lut-sizes,Fail
> +kms_cursor_legacy@cursor-vs-flip-atomic,Fail
> +kms_cursor_legacy@cursor-vs-flip-legacy,Fail
> +kms_flip@flip-vs-modeset-vs-hang,Fail
> +kms_flip@flip-vs-panning-vs-hang,Fail
> +kms_flip@flip-vs-suspend,Fail
> +kms_prop_blob@invalid-set-prop-any,Fail
> +kms_properties@get_properties-sanity-atomic,Fail
> +kms_properties@plane-properties-atomic,Fail
> +kms_properties@plane-properties-legacy,Fail
> kms_rmfb@close-fd,Fail
> diff --git a/drivers/gpu/drm/ci/xfails/mediatek-mt8183-flakes.txt b/drivers/gpu/drm/ci/xfails/mediatek-mt8183-flakes.txt
> new file mode 100644
> index 000000000000..5885a950fa72
> --- /dev/null
> +++ b/drivers/gpu/drm/ci/xfails/mediatek-mt8183-flakes.txt
> @@ -0,0 +1,8 @@
> +# Board Name: mt8183-kukui-jacuzzi-juniper-sku16.dtb
> +# Bug Report: https://lore.kernel.org/dri-devel/[email protected]/T/#u
> +# IGT Version: 1.28-gd2af13d9f
> +# Failure Rate: 100
> +# Linux Version: 6.7.0-rc3
> +
> +# Reported by deqp-runner
> +kms_cursor_legacy@cursor-vs-flip-atomic-transitions

2024-03-07 14:03:22

by Helen Koike

[permalink] [raw]
Subject: Re: [PATCH v4 09/11] drm/ci: rockchip: Refactor existing rockchip jobs



On 06/03/2024 00:06, Vignesh Raman wrote:
> For rockchip rk3288 and rk3399, the display driver is rockchip.
> Currently, in drm-ci for rockchip, only the display driver is
> tested. Refactor the existing rockchip jobs so that gpu driver
> testing jobs can be added later and update xfails accordingly.
>
> Signed-off-by: Vignesh Raman <[email protected]>
> ---
>
> v2:
> - Refactor the patch to rename job to indicate display driver testing,
> rename the existing xfail files.
>
> v3:
> - Add the job name in GPU_VERSION and use it for xfail file names
> instead of using DRIVER_NAME. Also update xfails.
>
> v4:
> - Remove the display suffix in job and rename xfails accordingly.
> Remove the change adding job name in GPU_VERSION.
>
> ---
> drivers/gpu/drm/ci/test.yml | 36 ++++++++----
> .../drm/ci/xfails/rockchip-rk3288-fails.txt | 58 ++++++-------------
> .../drm/ci/xfails/rockchip-rk3288-flakes.txt | 20 +++++++
> .../drm/ci/xfails/rockchip-rk3288-skips.txt | 54 ++---------------
> .../drm/ci/xfails/rockchip-rk3399-fails.txt | 38 ++++++------
> .../drm/ci/xfails/rockchip-rk3399-flakes.txt | 28 +++++++--
> .../drm/ci/xfails/rockchip-rk3399-skips.txt | 5 +-
> 7 files changed, 110 insertions(+), 129 deletions(-)
> create mode 100644 drivers/gpu/drm/ci/xfails/rockchip-rk3288-flakes.txt
>
> diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
> index 6ae6398b3d88..831e580e6dfd 100644
> --- a/drivers/gpu/drm/ci/test.yml
> +++ b/drivers/gpu/drm/ci/test.yml
> @@ -153,33 +153,45 @@ msm:sdm845:
> script:
> - ./install/bare-metal/cros-servo.sh
>
> -rockchip:rk3288:
> - extends:
> - - .lava-igt:arm32
> +.rockchip:
> stage: rockchip
> variables:
> - DRIVER_NAME: rockchip

Looks like it make sense to keep DRIVER_NAME here, no?

> - DEVICE_TYPE: rk3288-veyron-jaq
> DTB: ${DEVICE_TYPE}
> BOOT_METHOD: depthcharge
> +
> +.rk3288:
> + extends:
> + - .lava-igt:arm32
> + - .rockchip

Maybe, instead of extending .rockchip here, make .rockchip tied to the
DRIVER_NAME and .rk3288 tied to the GPU_VERSION, and on rockchip:rk3288
you can extend both .rockchip and .rk3288, what do you think?
So rockchip:rk3399 you can extend .rockchip and .rk3399.

and in the panfrost one you can have a .panfrost (that can extend
rockchip if they are the same definition).

I feel it becomes less confusing, what do you think?

I would even add some prefix or suffix to make it less confusing, like
driver-rockchip and .gpu-rk3288 for instance, making it a bit more
intuitive and helping our future selves :)

> + variables:
> + DEVICE_TYPE: rk3288-veyron-jaq
> KERNEL_IMAGE_TYPE: "zimage"
> - GPU_VERSION: rk3288

Looks like it make sense to keep GPU_VERSION here, no? Same comment for
rk3399.

Regards,
Helen

> RUNNER_TAG: mesa-ci-x86-64-lava-rk3288-veyron-jaq
>
> -rockchip:rk3399:
> +.rk3399:
> extends:
> - .lava-igt:arm64
> - stage: rockchip
> + - .rockchip
> parallel: 2
> variables:
> - DRIVER_NAME: rockchip
> DEVICE_TYPE: rk3399-gru-kevin
> - DTB: ${DEVICE_TYPE}
> - BOOT_METHOD: depthcharge
> KERNEL_IMAGE_TYPE: ""
> - GPU_VERSION: rk3399
> RUNNER_TAG: mesa-ci-x86-64-lava-rk3399-gru-kevin
>
> +rockchip:rk3288:
> + extends:
> + - .rk3288
> + variables:
> + GPU_VERSION: rk3288
> + DRIVER_NAME: rockchip
> +
> +rockchip:rk3399:
> + extends:
> + - .rk3399
> + variables:
> + GPU_VERSION: rk3399
> + DRIVER_NAME: rockchip
> +
> .i915:
> extends:
> - .lava-igt:x86_64
> diff --git a/drivers/gpu/drm/ci/xfails/rockchip-rk3288-fails.txt b/drivers/gpu/drm/ci/xfails/rockchip-rk3288-fails.txt
> index 90c63f519e9e..c16e0a06cc8f 100644
> --- a/drivers/gpu/drm/ci/xfails/rockchip-rk3288-fails.txt
> +++ b/drivers/gpu/drm/ci/xfails/rockchip-rk3288-fails.txt
> @@ -1,54 +1,30 @@
> -kms_3d,Crash
> -kms_bw@linear-tiling-2-displays-1920x1080p,Fail
> kms_bw@linear-tiling-2-displays-2560x1440p,Fail
> -kms_bw@linear-tiling-2-displays-3840x2160p,Fail
> kms_bw@linear-tiling-3-displays-1920x1080p,Fail
> -kms_bw@linear-tiling-3-displays-2560x1440p,Fail
> -kms_bw@linear-tiling-3-displays-3840x2160p,Fail
> +kms_cursor_crc@cursor-onscreen-32x10,Crash
> +kms_cursor_crc@cursor-onscreen-64x21,Crash
> +kms_cursor_crc@cursor-onscreen-64x64,Crash
> +kms_cursor_crc@cursor-random-32x10,Crash
> +kms_cursor_crc@cursor-random-64x21,Crash
> +kms_cursor_crc@cursor-random-64x64,Crash
> +kms_cursor_crc@cursor-sliding-32x10,Crash
> +kms_cursor_crc@cursor-sliding-32x32,Crash
> +kms_cursor_crc@cursor-sliding-64x64,Crash
> +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-atomic-transitions,Fail
> +kms_cursor_legacy@cursor-vs-flip-toggle,Fail
> +kms_cursor_legacy@flip-vs-cursor-crc-atomic,Crash
> +kms_cursor_legacy@flip-vs-cursor-crc-legacy,Crash
> kms_flip@flip-vs-modeset-vs-hang,Crash
> kms_flip@flip-vs-panning-vs-hang,Crash
> -kms_force_connector_basic@force-load-detect,Fail
> kms_invalid_mode@int-max-clock,Crash
> -kms_pipe_crc_basic@compare-crc-sanitycheck-nv12,Crash
> -kms_pipe_crc_basic@nonblocking-crc-frame-sequence,Crash
> kms_pipe_crc_basic@read-crc-frame-sequence,Crash
> kms_plane@pixel-format,Crash
> -kms_plane@pixel-format-source-clamping,Crash
> -kms_plane@plane-position-hole,Crash
> -kms_plane@plane-position-hole-dpms,Crash
> kms_plane_cursor@overlay,Crash
> -kms_plane_cursor@pipe-A-overlay-size-128,Fail
> -kms_plane_cursor@pipe-A-overlay-size-256,Fail
> -kms_plane_cursor@pipe-A-overlay-size-64,Fail
> -kms_plane_cursor@pipe-A-primary-size-128,Fail
> -kms_plane_cursor@pipe-A-primary-size-256,Fail
> -kms_plane_cursor@pipe-A-primary-size-64,Fail
> -kms_plane_cursor@pipe-A-viewport-size-128,Fail
> -kms_plane_cursor@pipe-A-viewport-size-256,Fail
> -kms_plane_cursor@pipe-A-viewport-size-64,Fail
> -kms_plane_cursor@pipe-B-overlay-size-128,Fail
> -kms_plane_cursor@pipe-B-overlay-size-256,Fail
> -kms_plane_cursor@pipe-B-overlay-size-64,Fail
> -kms_plane_cursor@pipe-B-primary-size-128,Fail
> -kms_plane_cursor@pipe-B-primary-size-256,Fail
> -kms_plane_cursor@pipe-B-primary-size-64,Fail
> -kms_plane_cursor@pipe-B-viewport-size-128,Fail
> -kms_plane_cursor@pipe-B-viewport-size-256,Fail
> -kms_plane_cursor@pipe-B-viewport-size-64,Fail
> kms_plane_cursor@primary,Crash
> -kms_plane_cursor@viewport,Crash
> -kms_plane_lowres@tiling-none,Fail
> -kms_plane_scaling@downscale-with-modifier-factor-0-25,Fail
> -kms_plane_scaling@downscale-with-rotation-factor-0-25,Fail
> -kms_plane_scaling@upscale-with-modifier-20x20,Fail
> -kms_plane_scaling@upscale-with-modifier-factor-0-25,Fail
> -kms_plane_scaling@upscale-with-pixel-format-20x20,Fail
> -kms_plane_scaling@upscale-with-pixel-format-factor-0-25,Fail
> -kms_plane_scaling@upscale-with-rotation-20x20,Fail
> -kms_prime@basic-crc,Fail
> -kms_properties@connector-properties-atomic,Crash
> +kms_prop_blob@invalid-set-prop,Crash
> kms_properties@connector-properties-legacy,Crash
> kms_properties@get_properties-sanity-atomic,Crash
> kms_properties@get_properties-sanity-non-atomic,Crash
> kms_rmfb@close-fd,Crash
> -kms_setmode@invalid-clone-single-crtc,Crash
> diff --git a/drivers/gpu/drm/ci/xfails/rockchip-rk3288-flakes.txt b/drivers/gpu/drm/ci/xfails/rockchip-rk3288-flakes.txt
> new file mode 100644
> index 000000000000..de13bac3a5bc
> --- /dev/null
> +++ b/drivers/gpu/drm/ci/xfails/rockchip-rk3288-flakes.txt
> @@ -0,0 +1,20 @@
> +# Board Name: rk3288-veyron-jaq.dtb
> +# Bug Report: https://lore.kernel.org/dri-devel/[email protected]/T/#u
> +# Failure Rate: 50
> +# IGT Version: 1.28-gd2af13d9f
> +# Linux Version: 6.7.0-rc3
> +
> +# Reported by deqp-runner
> +kms_cursor_crc@cursor-offscreen-64x21
> +kms_cursor_legacy@flip-vs-cursor-legacy
> +kms_cursor_legacy@flip-vs-cursor-atomic
> +kms_plane@plane-panning-top-left
> +kms_cursor_crc@cursor-alpha-opaque
> +kms_flip@dpms-vs-vblank-race-interruptible
> +kms_universal_plane@universal-plane-functional
> +
> +# The below test shows inconsistency across multiple runs, giving
> +# results of Pass and Crash alternately.
> +kms_cursor_crc@cursor-size-change
> +core_setmaster_vs_auth
> +kms_flip@modeset-vs-vblank-race
> diff --git a/drivers/gpu/drm/ci/xfails/rockchip-rk3288-skips.txt b/drivers/gpu/drm/ci/xfails/rockchip-rk3288-skips.txt
> index f20c3574b75a..627bf03f3c78 100644
> --- a/drivers/gpu/drm/ci/xfails/rockchip-rk3288-skips.txt
> +++ b/drivers/gpu/drm/ci/xfails/rockchip-rk3288-skips.txt
> @@ -1,52 +1,8 @@
> # Suspend to RAM seems to be broken on this machine
> .*suspend.*
>
> -# Too unstable, machine ends up hanging after lots of Oopses
> -kms_cursor_legacy.*
> -
> -# Started hanging the machine on Linux 5.19-rc2:
> -#
> -# [IGT] kms_plane_lowres: executing
> -# [IGT] kms_plane_lowres: starting subtest pipe-F-tiling-y
> -# [IGT] kms_plane_lowres: exiting, ret=77
> -# Console: switching to colour frame buffer device 170x48
> -# rockchip-drm display-subsystem: [drm] *ERROR* flip_done timed out
> -# rockchip-drm display-subsystem: [drm] *ERROR* [CRTC:35:crtc-0] commit wait timed out
> -# BUG: spinlock bad magic on CPU#3, kms_plane_lowre/482
> -# 8<--- cut here ---
> -# Unable to handle kernel paging request at virtual address 7812078e
> -# [7812078e] *pgd=00000000
> -# Internal error: Oops: 5 [#1] SMP ARM
> -# Modules linked in:
> -# CPU: 3 PID: 482 Comm: kms_plane_lowre Tainted: G W 5.19.0-rc2-323596-g00535de92171 #1
> -# Hardware name: Rockchip (Device Tree)
> -# Process kms_plane_lowre (pid: 482, stack limit = 0x1193ac2b)
> -# spin_dump from do_raw_spin_lock+0xa4/0xe8
> -# do_raw_spin_lock from wait_for_completion_timeout+0x2c/0x120
> -# wait_for_completion_timeout from drm_crtc_commit_wait+0x18/0x7c
> -# drm_crtc_commit_wait from drm_atomic_helper_wait_for_dependencies+0x44/0x168
> -# drm_atomic_helper_wait_for_dependencies from commit_tail+0x34/0x180
> -# commit_tail from drm_atomic_helper_commit+0x164/0x18c
> -# drm_atomic_helper_commit from drm_atomic_commit+0xac/0xe4
> -# drm_atomic_commit from drm_client_modeset_commit_atomic+0x23c/0x284
> -# drm_client_modeset_commit_atomic from drm_client_modeset_commit_locked+0x60/0x1c8
> -# drm_client_modeset_commit_locked from drm_client_modeset_commit+0x24/0x40
> -# drm_client_modeset_commit from drm_fbdev_client_restore+0x58/0x94
> -# drm_fbdev_client_restore from drm_client_dev_restore+0x70/0xbc
> -# drm_client_dev_restore from drm_release+0xf4/0x114
> -# drm_release from __fput+0x74/0x240
> -# __fput from task_work_run+0x84/0xb4
> -# task_work_run from do_exit+0x34c/0xa20
> -# do_exit from do_group_exit+0x34/0x98
> -# do_group_exit from __wake_up_parent+0x0/0x18
> -# Code: e595c008 12843d19 03e00000 03093168 (15940508)
> -# ---[ end trace 0000000000000000 ]---
> -# note: kms_plane_lowre[482] exited with preempt_count 1
> -# Fixing recursive fault but reboot is needed!
> -kms_plane_lowres@pipe-F-tiling-y
> -
> -# Take too long, we have only two machines, and these are very flaky
> -kms_cursor_crc.*
> -
> -# Machine is hanging in this test, so skip it
> -kms_pipe_crc_basic@disable-crc-after-crtc
> \ No newline at end of file
> +# Machine is hanging in this test with linux kernel version 6.7.0-rc4, so skip it
> +kms_cursor_crc@cursor-onscreen-32x32
> +kms_pipe_crc_basic@disable-crc-after-crtc
> +kms_pipe_crc_basic@pipe-A-eDP-1
> +kms_bw@linear-tiling-3-displays-2560x1440
> diff --git a/drivers/gpu/drm/ci/xfails/rockchip-rk3399-fails.txt b/drivers/gpu/drm/ci/xfails/rockchip-rk3399-fails.txt
> index d516d9c1d546..ace0d6ed6f2f 100644
> --- a/drivers/gpu/drm/ci/xfails/rockchip-rk3399-fails.txt
> +++ b/drivers/gpu/drm/ci/xfails/rockchip-rk3399-fails.txt
> @@ -1,12 +1,13 @@
> -kms_color@gamma,Fail
> +kms_atomic_transition@modeset-transition,Fail
> +kms_atomic_transition@modeset-transition-fencing,Fail
> +kms_atomic_transition@plane-toggle-modeset-transition,Fail
> kms_color@legacy-gamma,Fail
> -kms_color@pipe-A-legacy-gamma,Fail
> -kms_color@pipe-B-legacy-gamma,Fail
> kms_cursor_crc@cursor-alpha-opaque,Fail
> kms_cursor_crc@cursor-alpha-transparent,Fail
> kms_cursor_crc@cursor-dpms,Fail
> kms_cursor_crc@cursor-offscreen-32x10,Fail
> kms_cursor_crc@cursor-offscreen-32x32,Fail
> +kms_cursor_crc@cursor-offscreen-64x21,Fail
> kms_cursor_crc@cursor-offscreen-64x64,Fail
> kms_cursor_crc@cursor-onscreen-32x10,Fail
> kms_cursor_crc@cursor-onscreen-32x32,Fail
> @@ -16,6 +17,7 @@ kms_cursor_crc@cursor-random-32x10,Fail
> kms_cursor_crc@cursor-random-32x32,Fail
> kms_cursor_crc@cursor-random-64x21,Fail
> kms_cursor_crc@cursor-random-64x64,Fail
> +kms_cursor_crc@cursor-rapid-movement-32x10,Fail
> kms_cursor_crc@cursor-rapid-movement-32x32,Fail
> kms_cursor_crc@cursor-rapid-movement-64x21,Fail
> kms_cursor_crc@cursor-rapid-movement-64x64,Fail
> @@ -24,23 +26,33 @@ kms_cursor_crc@cursor-sliding-32x10,Fail
> kms_cursor_crc@cursor-sliding-32x32,Fail
> kms_cursor_crc@cursor-sliding-64x21,Fail
> kms_cursor_crc@cursor-sliding-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@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_cursor_legacy@long-nonblocking-modeset-vs-cursor-atomic,Fail
> kms_flip@basic-flip-vs-wf_vblank,Fail
> kms_flip@blocking-wf_vblank,Fail
> kms_flip@dpms-vs-vblank-race,Fail
> +kms_flip@dpms-vs-vblank-race-interruptible,Fail
> kms_flip@flip-vs-absolute-wf_vblank,Fail
> -kms_flip@flip-vs-absolute-wf_vblank-interruptible,Fail
> kms_flip@flip-vs-blocking-wf-vblank,Fail
> kms_flip@flip-vs-modeset-vs-hang,Fail
> kms_flip@flip-vs-panning,Fail
> kms_flip@flip-vs-panning-interruptible,Fail
> kms_flip@flip-vs-panning-vs-hang,Fail
> kms_flip@modeset-vs-vblank-race,Fail
> +kms_flip@modeset-vs-vblank-race-interruptible,Fail
> kms_flip@plain-flip-fb-recreate,Fail
> kms_flip@plain-flip-fb-recreate-interruptible,Fail
> kms_flip@plain-flip-ts-check,Fail
> kms_flip@plain-flip-ts-check-interruptible,Fail
> kms_flip@wf_vblank-ts-check,Fail
> -kms_flip@wf_vblank-ts-check-interruptible,Fail
> kms_invalid_mode@int-max-clock,Fail
> kms_pipe_crc_basic@compare-crc-sanitycheck-nv12,Fail
> kms_pipe_crc_basic@compare-crc-sanitycheck-xr24,Fail
> @@ -56,20 +68,6 @@ kms_plane@plane-panning-top-left,Fail
> kms_plane@plane-position-covered,Fail
> kms_plane@plane-position-hole,Fail
> kms_plane@plane-position-hole-dpms,Fail
> -kms_plane_cursor@overlay,Fail
> -kms_plane_cursor@pipe-B-overlay-size-128,Fail
> -kms_plane_cursor@pipe-B-overlay-size-256,Fail
> -kms_plane_cursor@pipe-B-overlay-size-64,Fail
> -kms_plane_cursor@pipe-B-primary-size-128,Fail
> -kms_plane_cursor@pipe-B-primary-size-256,Fail
> -kms_plane_cursor@pipe-B-primary-size-64,Fail
> -kms_plane_cursor@pipe-B-viewport-size-128,Fail
> -kms_plane_cursor@pipe-B-viewport-size-256,Fail
> -kms_plane_cursor@pipe-B-viewport-size-64,Fail
> -kms_plane_cursor@primary,Fail
> -kms_plane_cursor@viewport,Fail
> -kms_plane_multiple@atomic-pipe-B-tiling-none,Fail
> kms_plane_multiple@tiling-none,Fail
> -kms_prime@basic-crc,Fail
> kms_rmfb@close-fd,Fail
> -kms_universal_plane@universal-plane-pipe-B-functional,Fail
> +kms_universal_plane@universal-plane-functional,Fail
> diff --git a/drivers/gpu/drm/ci/xfails/rockchip-rk3399-flakes.txt b/drivers/gpu/drm/ci/xfails/rockchip-rk3399-flakes.txt
> index c9fdc623ab91..5126a849bf4a 100644
> --- a/drivers/gpu/drm/ci/xfails/rockchip-rk3399-flakes.txt
> +++ b/drivers/gpu/drm/ci/xfails/rockchip-rk3399-flakes.txt
> @@ -1,7 +1,25 @@
> -kms_bw@linear-tiling-2-displays-1920x1080p
> -kms_cursor_crc@cursor-offscreen-64x21
> +# Board Name: rk3399-gru-kevin.dtb
> +# Bug Report: https://lore.kernel.org/dri-devel/[email protected]/T/#u
> +# IGT Version: 1.28-gd2af13d9f
> +# Failure Rate: 50
> +# Linux Version: 6.7.0-rc3
> +
> +# Reported by deqp-runner
> +kms_bw@linear-tiling-1-displays-1920x1080p
> +kms_color@gamma
> +kms_cursor_legacy@cursorA-vs-flipA-toggle
> +kms_cursor_legacy@nonblocking-modeset-vs-cursor-atomic
> +kms_flip@dpms-vs-vblank-race
> kms_flip@dpms-vs-vblank-race-interruptible
> +kms_flip@flip-vs-absolute-wf_vblank-interruptible
> kms_flip@flip-vs-wf_vblank-interruptible
> -kms_plane_cursor@overlay
> -kms_plane_cursor@primary
> -kms_plane_cursor@viewport
> +kms_flip@modeset-vs-vblank-race-interruptible
> +kms_pipe_crc_basic@compare-crc-sanitycheck-xr24
> +kms_setmode@basic
> +
> +# The below test shows inconsistency across multiple runs, giving
> +# results of Pass and Crash alternately.
> +kms_bw@linear-tiling-2-displays-1920x1080p
> +kms_bw@linear-tiling-3-displays-2560x1440p
> +kms_cursor_crc@cursor-rapid-movement-32x10
> +kms_flip@wf_vblank-ts-check-interruptible
> diff --git a/drivers/gpu/drm/ci/xfails/rockchip-rk3399-skips.txt b/drivers/gpu/drm/ci/xfails/rockchip-rk3399-skips.txt
> index 10c3d81a919a..cf5577b7720c 100644
> --- a/drivers/gpu/drm/ci/xfails/rockchip-rk3399-skips.txt
> +++ b/drivers/gpu/drm/ci/xfails/rockchip-rk3399-skips.txt
> @@ -1,5 +1,6 @@
> # Suspend to RAM seems to be broken on this machine
> .*suspend.*
>
> -# Too unstable, machine ends up hanging after lots of Oopses
> -kms_cursor_legacy.*
> +# Machine ends up hanging after lots of Oopses with linux version 6.7.0-rc4
> +# rockchip-dp ff970000.dp: AUX CH error happened: 0x2
> +kms_plane_multiple.*

2024-03-15 11:15:37

by Vignesh Raman

[permalink] [raw]
Subject: Re: [PATCH v4 05/11] drm/ci: mediatek: Refactor existing mediatek jobs

Hi Helen,

On 07/03/24 19:32, Helen Koike wrote:
>
>
> On 06/03/2024 00:06, Vignesh Raman wrote:
>> For mediatek mt8173 and mt8183, the display driver is mediatek.
>> Currently, in drm-ci for mediatek, only the display driver is
>> tested. Refactor the existing mediatek jobs so that gpu driver
>> testing jobs can be added later and update xfails accordingly.
>> Since the correct driver name is passed from the job to test gpu
>> and display driver, remove the check to set IGT_FORCE_DRIVER
>> based on driver name.
>>
>> Signed-off-by: Vignesh Raman <[email protected]>
>> ---
>>
>> v2:
>>    - Refactor the patch to rename job to indicate display driver testing,
>>      rename the existing xfail files, and remove IGT_FORCE_DRIVER from
>> the
>>      script since it's now set by the job.
>>
>> v3:
>>    - Add the job name in GPU_VERSION and use it for xfail file names
>> instead
>>      of using DRIVER_NAME. Also update xfails.
>>
>> v4:
>>    - Remove the display suffix in job and rename xfails accordingly.
>>      Remove the change adding job name in GPU_VERSION.
>>
>> ---
>>   drivers/gpu/drm/ci/igt_runner.sh              | 10 ---------
>>   drivers/gpu/drm/ci/test.yml                   | 21 ++++++++++++++-----
>>   .../drm/ci/xfails/mediatek-mt8173-fails.txt   | 15 -------------
>>   .../drm/ci/xfails/mediatek-mt8173-flakes.txt  | 13 ++++++++++++
>>   .../drm/ci/xfails/mediatek-mt8183-fails.txt   | 21 ++++++++++++-------
>>   .../drm/ci/xfails/mediatek-mt8183-flakes.txt  |  8 +++++++
>>   6 files changed, 50 insertions(+), 38 deletions(-)
>>   create mode 100644 drivers/gpu/drm/ci/xfails/mediatek-mt8173-flakes.txt
>>   create mode 100644 drivers/gpu/drm/ci/xfails/mediatek-mt8183-flakes.txt
>>
>> diff --git a/drivers/gpu/drm/ci/igt_runner.sh
>> b/drivers/gpu/drm/ci/igt_runner.sh
>> index 77cd81fe6d1a..711f32772e48 100755
>> --- a/drivers/gpu/drm/ci/igt_runner.sh
>> +++ b/drivers/gpu/drm/ci/igt_runner.sh
>> @@ -20,16 +20,6 @@ cat /sys/kernel/debug/dri/*/state
>>   set -e
>>   case "$DRIVER_NAME" in
>> -    rockchip|meson)
>> -        export IGT_FORCE_DRIVER="panfrost"
>> -        ;;
>> -    mediatek)
>> -        if [ "$GPU_VERSION" = "mt8173" ]; then
>> -            export IGT_FORCE_DRIVER=${DRIVER_NAME}
>> -        elif [ "$GPU_VERSION" = "mt8183" ]; then
>> -            export IGT_FORCE_DRIVER="panfrost"
>> -        fi
>> -        ;;
>>       amdgpu)
>>           # Cannot use HWCI_KERNEL_MODULES as at that point we don't
>> have the module in /lib
>>           mv /install/modules/lib/modules/* /lib/modules/.
>> diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
>> index 0857773e5c5f..f8f48523ada3 100644
>> --- a/drivers/gpu/drm/ci/test.yml
>> +++ b/drivers/gpu/drm/ci/test.yml
>> @@ -282,29 +282,40 @@ amdgpu:stoney:
>>       - .lava-igt:arm64
>>     stage: mediatek
>>     variables:
>> -    DRIVER_NAME: mediatek
>>       DTB: ${DEVICE_TYPE}
>>       BOOT_METHOD: depthcharge
>>       KERNEL_IMAGE_TYPE: ""
>> -mediatek:mt8173:
>> +.mt8173:
>>     extends:
>>       - .mediatek
>>     parallel: 4
>>     variables:
>>       DEVICE_TYPE: mt8173-elm-hana
>> -    GPU_VERSION: mt8173
>
> Looks like it make sense to keep GPU_VERSION here, no?
> Same comment for .mt8183.

Yes, will keep the GPU_VERSION here for mediatek jobs and others also.

Regards,
Vignesh


2024-03-15 11:18:37

by Vignesh Raman

[permalink] [raw]
Subject: Re: [PATCH v4 09/11] drm/ci: rockchip: Refactor existing rockchip jobs

Hi Helen,

On 07/03/24 19:32, Helen Koike wrote:
>
>
> On 06/03/2024 00:06, Vignesh Raman wrote:
>> For rockchip rk3288 and rk3399, the display driver is rockchip.
>> Currently, in drm-ci for rockchip, only the display driver is
>> tested. Refactor the existing rockchip jobs so that gpu driver
>> testing jobs can be added later and update xfails accordingly.
>>
>> Signed-off-by: Vignesh Raman <[email protected]>
>> ---
>>
>> v2:
>>    - Refactor the patch to rename job to indicate display driver testing,
>>      rename the existing xfail files.
>>
>> v3:
>>    - Add the job name in GPU_VERSION and use it for xfail file names
>>      instead of using DRIVER_NAME. Also update xfails.
>>
>> v4:
>>    - Remove the display suffix in job and rename xfails accordingly.
>>      Remove the change adding job name in GPU_VERSION.
>>
>> ---
>>   drivers/gpu/drm/ci/test.yml                   | 36 ++++++++----
>>   .../drm/ci/xfails/rockchip-rk3288-fails.txt   | 58 ++++++-------------
>>   .../drm/ci/xfails/rockchip-rk3288-flakes.txt  | 20 +++++++
>>   .../drm/ci/xfails/rockchip-rk3288-skips.txt   | 54 ++---------------
>>   .../drm/ci/xfails/rockchip-rk3399-fails.txt   | 38 ++++++------
>>   .../drm/ci/xfails/rockchip-rk3399-flakes.txt  | 28 +++++++--
>>   .../drm/ci/xfails/rockchip-rk3399-skips.txt   |  5 +-
>>   7 files changed, 110 insertions(+), 129 deletions(-)
>>   create mode 100644 drivers/gpu/drm/ci/xfails/rockchip-rk3288-flakes.txt
>>
>> diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
>> index 6ae6398b3d88..831e580e6dfd 100644
>> --- a/drivers/gpu/drm/ci/test.yml
>> +++ b/drivers/gpu/drm/ci/test.yml
>> @@ -153,33 +153,45 @@ msm:sdm845:
>>     script:
>>       - ./install/bare-metal/cros-servo.sh
>> -rockchip:rk3288:
>> -  extends:
>> -    - .lava-igt:arm32
>> +.rockchip:
>>     stage: rockchip
>>     variables:
>> -    DRIVER_NAME: rockchip
>
> Looks like it make sense to keep DRIVER_NAME here, no?
>
>> -    DEVICE_TYPE: rk3288-veyron-jaq
>>       DTB: ${DEVICE_TYPE}
>>       BOOT_METHOD: depthcharge
>> +
>> +.rk3288:
>> +  extends:
>> +    - .lava-igt:arm32
>> +    - .rockchip
>
> Maybe, instead of extending .rockchip here, make .rockchip tied to the
> DRIVER_NAME and .rk3288 tied to the GPU_VERSION, and on rockchip:rk3288
> you can extend both .rockchip and .rk3288, what do you think?
> So rockchip:rk3399 you can extend .rockchip and .rk3399.
>
> and in the panfrost one you can have a .panfrost (that can extend
> .rockchip if they are the same definition).
>
> I feel it becomes less confusing, what do you think?
>
> I would even add some prefix or suffix to make it less confusing, like
> .driver-rockchip and .gpu-rk3288 for instance, making it a bit more
> intuitive and helping our future selves :)

Thanks for the suggestion. This can be done. Should we do it only
for rockchip jobs or others also (meson, mediatek) ?

>
>> +  variables:
>> +    DEVICE_TYPE: rk3288-veyron-jaq
>>       KERNEL_IMAGE_TYPE: "zimage"
>> -    GPU_VERSION: rk3288
>
> Looks like it make sense to keep GPU_VERSION here, no? Same comment for
> .rk3399.
Yes, will fix this.

Regards,
Vignesh

2024-03-15 11:24:14

by Vignesh Raman

[permalink] [raw]
Subject: Re: [PATCH v4 00/11] drm/ci: Add support for GPU and display testing

Hi Helen,

On 07/03/24 19:32, Helen Koike wrote:
>
>
> On 06/03/2024 00:06, Vignesh Raman wrote:
>> Some ARM SOCs have a separate display controller and GPU, each with
>> different drivers. For mediatek mt8173, the GPU driver is powervr,
>> and the display driver is mediatek. In the case of mediatek mt8183,
>> the GPU driver is panfrost, and the display driver is mediatek.
>> With rockchip rk3288/rk3399, the GPU driver is panfrost, while the
>> display driver is rockchip. For amlogic meson, the GPU driver is
>> panfrost, and the display driver is meson.
>>
>> IGT tests run various tests with different xfails and can test both
>> GPU devices and KMS/display devices. Currently, in drm-ci for MediaTek,
>> Rockchip, and Amlogic Meson platforms, only the GPU driver is tested.
>> This leads to incomplete coverage since the display is never tested on
>> these platforms. This commit series adds support in drm-ci to run tests
>> for both GPU and display drivers for MediaTek, Rockchip, and Amlogic
>> Meson platforms.
>>
>> Uprev mesa and IGT in drm-ci and add amd, v3d, vc4 and vgem specific
>> tests to testlist. Have testlist.txt per driver and include a base
>> testlist so that the driver specific tests will run only on those
>> hardware
>> and add testlists to the MAINTAINERS file.
>>
>> This series also includes patch to add vkms testing to drm-ci.
>>
>> Working pipeline link,
>> https://gitlab.freedesktop.org/vigneshraman/linux/-/pipelines/1119859
>
> Hi Vignesh, thanks for this patchset.
>
> Just to confirm, the new convention is:
>
> stages are named per DRIVER_NAME

Yes correct.

> jobs are named DRIVER_NAME:GPU_VERSION

Yes

> xfails files and testlist files are named DRIVER_NAME-<xfails-suffix>.txt

Base testlist is named as testlist.txt
driver specific testlist is named as testlist-$DRIVER_NAME.txt

xfails files are named as $DRIVER_NAME-$GPU_VERSION-<xfails-suffix>.txt
(mediatek-mt8183-fails.txt)

>
> Looks good.
>
> I just have some minor comments/questions in the series, please check.

Will address those and send v5.

Regards,
Vignesh


2024-03-15 12:03:49

by Helen Koike

[permalink] [raw]
Subject: Re: [PATCH v4 09/11] drm/ci: rockchip: Refactor existing rockchip jobs



On 15/03/2024 08:18, Vignesh Raman wrote:
> Hi Helen,
>
> On 07/03/24 19:32, Helen Koike wrote:
>>
>>
>> On 06/03/2024 00:06, Vignesh Raman wrote:
>>> For rockchip rk3288 and rk3399, the display driver is rockchip.
>>> Currently, in drm-ci for rockchip, only the display driver is
>>> tested. Refactor the existing rockchip jobs so that gpu driver
>>> testing jobs can be added later and update xfails accordingly.
>>>
>>> Signed-off-by: Vignesh Raman <[email protected]>
>>> ---
>>>
>>> v2:
>>>    - Refactor the patch to rename job to indicate display driver
>>> testing,
>>>      rename the existing xfail files.
>>>
>>> v3:
>>>    - Add the job name in GPU_VERSION and use it for xfail file names
>>>      instead of using DRIVER_NAME. Also update xfails.
>>>
>>> v4:
>>>    - Remove the display suffix in job and rename xfails accordingly.
>>>      Remove the change adding job name in GPU_VERSION.
>>>
>>> ---
>>>   drivers/gpu/drm/ci/test.yml                   | 36 ++++++++----
>>>   .../drm/ci/xfails/rockchip-rk3288-fails.txt   | 58 ++++++-------------
>>>   .../drm/ci/xfails/rockchip-rk3288-flakes.txt  | 20 +++++++
>>>   .../drm/ci/xfails/rockchip-rk3288-skips.txt   | 54 ++---------------
>>>   .../drm/ci/xfails/rockchip-rk3399-fails.txt   | 38 ++++++------
>>>   .../drm/ci/xfails/rockchip-rk3399-flakes.txt  | 28 +++++++--
>>>   .../drm/ci/xfails/rockchip-rk3399-skips.txt   |  5 +-
>>>   7 files changed, 110 insertions(+), 129 deletions(-)
>>>   create mode 100644
>>> drivers/gpu/drm/ci/xfails/rockchip-rk3288-flakes.txt
>>>
>>> diff --git a/drivers/gpu/drm/ci/test.yml b/drivers/gpu/drm/ci/test.yml
>>> index 6ae6398b3d88..831e580e6dfd 100644
>>> --- a/drivers/gpu/drm/ci/test.yml
>>> +++ b/drivers/gpu/drm/ci/test.yml
>>> @@ -153,33 +153,45 @@ msm:sdm845:
>>>     script:
>>>       - ./install/bare-metal/cros-servo.sh
>>> -rockchip:rk3288:
>>> -  extends:
>>> -    - .lava-igt:arm32
>>> +.rockchip:
>>>     stage: rockchip
>>>     variables:
>>> -    DRIVER_NAME: rockchip
>>
>> Looks like it make sense to keep DRIVER_NAME here, no?
>>
>>> -    DEVICE_TYPE: rk3288-veyron-jaq
>>>       DTB: ${DEVICE_TYPE}
>>>       BOOT_METHOD: depthcharge
>>> +
>>> +.rk3288:
>>> +  extends:
>>> +    - .lava-igt:arm32
>>> +    - .rockchip
>>
>> Maybe, instead of extending .rockchip here, make .rockchip tied to the
>> DRIVER_NAME and .rk3288 tied to the GPU_VERSION, and on
>> rockchip:rk3288 you can extend both .rockchip and .rk3288, what do you
>> think?
>> So rockchip:rk3399 you can extend .rockchip and .rk3399.
>>
>> and in the panfrost one you can have a .panfrost (that can extend
>> .rockchip if they are the same definition).
>>
>> I feel it becomes less confusing, what do you think?
>>
>> I would even add some prefix or suffix to make it less confusing, like
>> .driver-rockchip and .gpu-rk3288 for instance, making it a bit more
>> intuitive and helping our future selves :)
>
> Thanks for the suggestion. This can be done. Should we do it only
> for rockchip jobs or others also (meson, mediatek) ?

I guess we could keep the same patter for all the make sense.

Helen

>
>>
>>> +  variables:
>>> +    DEVICE_TYPE: rk3288-veyron-jaq
>>>       KERNEL_IMAGE_TYPE: "zimage"
>>> -    GPU_VERSION: rk3288
>>
>> Looks like it make sense to keep GPU_VERSION here, no? Same comment
>> for .rk3399.
> Yes, will fix this.
>
> Regards,
> Vignesh